Yes, it requires complex workaround: http://social.msdn.microsoft.com/Forums/sqlserver/en-US/0484210d-63c8-400e-a8b9-eb8497358498/tablevalued-or-userdefined-table-type-as-parameter-in-reporting-services Interesting...I read that and initially thought, "you've got to be kidding me". But then I read it again - yes, it's definitely a complex workaround, but one I could "sell". The process basically diverts the stored proc call to a report function that has the ability to use object array variables.
(This reminds me of workarounds you'll see in SSIS that use the object array variable as well)
My reason for the term "sell" - in five years as an instructor, there were some workarounds I'd show people where I thought to myself, "This workaround is so convoluted that it's almost embarrassing". While this one is mildly involved, it's one that can be "sold" to people who want some way to use TVPs. About the only issue I can think of is using this for SSRS reports exposed to users outside the domain (i.e. web reports), but I'd have to think about it.
If I could ask for 3 enhancements in SSRS, it would be direct support for TVPs, better direct support for stored procs that bring back multiple results (beyond the workarounds), and for the "Keep Group Together" function to work exactly like what you could do in Crystal reports.
So thanks for the link. It's easy for someone to say, "oh yeah, I knew about that one", but truthfully I hadn't seen it before.