Hello George, I implemented template function instantiation with the same #pragma link statement. If exact match is not found, then cint tries to instantiate function template. The change will be included in cint5.14.38. Thank you Masaharu Goto > >>>Thank you for sending me the request. I implemented following pragma in >>>cint5.14.38. >> >>> #pragma link [C|C++|off] function [scopename]::[funcname]([argtypes]); >> >>>You can specify scope with '#pragma link -- function'. Other things are >>>same as before. >> >>Is there any chance of using the same syntax for supporting (to some >>level) template member functions? I would want template members to be >>off by default (unless CINT found one that it knows has been >>instantiated anyway, perhaps), but where you could specify an explicit >>link to a template member. Smart pointers in particular this would be >>handy. >> >>#pragma link C++ function SmartPointer<X>::SmartPointer<X> >>(SmartPointer<Y>); >> >>for example is a very common idiom for smart pointer classes, so that >>you can implicitly convert smart pointers to Derived into smart >>pointers to Base. Of course, you can't specify all the possible >>conversions, but it may well be possible to specify enough of a subset >>to do the task you need to do in interpreted code. >> >>Being able to turn off particular instantiations of certain functions >>is also excellent and well appreciated -- we've already run into >>trouble with this with certain template classes, and will make use of >>this as soon as we get the version of CINT that implements it in the >>version of ROOT we use. >> >>BTW -- perhaps this should be a different message, but -- is there a >>package/script that would allow someone with a version of ROOT to >>upgrade just the version of CINT it is running (obviously, one would >>have to recompile)? It seems that the released versions of ROOT are >>often somewhat behind Masa's current version, and it would be nice to >>use, say, version 2.23 of ROOT with cint5.14.38; I know I would use >>this functionality if it were available. >> >>George Heintzelman >>gah@bnl.gov >>
This archive was generated by hypermail 2b29 : Tue Jan 02 2001 - 11:50:25 MET