lcio/src/cpp/include
diff -u -r1.8 -r1.9
--- LCRTRelations.h 6 Dec 2006 19:09:18 -0000 1.8
+++ LCRTRelations.h 8 Dec 2006 14:30:12 -0000 1.9
@@ -10,6 +10,11 @@
//------------------ internal helper typdefs, function and classes ----------
+ template <bool B>
+ struct can_call_ext{};
+ template <>
+ struct can_call_ext<true>{ static void check(){/* no_op */ } ; };
+
/** Function pointer for delete function */
typedef void (*DeleteFPtr)(void*) ;
@@ -424,7 +429,8 @@
template <class V>
inline typename V::ext_type ext() {
- static char check[ V::allowed_to_call_ext] ;
+ // static char check[ V::allowed_to_call_ext] ;
+ can_call_ext<V::allowed_to_call_ext>::check() ;
return ptr<V>() ;
}