In the example code I get an error message that ref_ptr is unknown, but osg::ref_ptr is what I refered to, the osg:: is dropped during parsing. This can have to do with the fact that the template parameter is also inside osg namespace. I have not determined if this is specific to variadic class templates but I woudl guess that if it was a general error it would have been caught by your tests.
Note that the code compiles if the using directive is uncommented.
Also take my word for it that TypeSet works for many other classes and even with many template parameters.