Update of /cvsroot/mod-c/ehtml/include
In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv30048/include
Modified Files:
Plugin.h
Log Message:
* gcc 3.1.1 does not emit Pluggable<SessionDriver>::_map symbols when using template<>. This patch makes gcc 3.1.1 happy again.
Index: Plugin.h
===================================================================
RCS file: /cvsroot/mod-c/ehtml/include/Plugin.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** Plugin.h 12 Sep 2006 12:55:18 -0000 1.2
--- Plugin.h 12 Sep 2006 14:31:02 -0000 1.3
***************
*** 47,53 ****
};
#define DECLARE_PLUGIN(C) \
! template<> std::map<std::string,C*> Pluggable<C>::_map; \
! template<> C* Pluggable<C>::_selected = NULL;
//@TODO: write a plug-in registerer
--- 47,59 ----
};
+ #if __GNUC__ >= 4
+ #define EXPLICIT_TEMPLATE template<>
+ #else
+ #define EXPLICIT_TEMPLATE
+ #endif
+
#define DECLARE_PLUGIN(C) \
! EXPLICIT_TEMPLATE std::map<std::string,C*> Pluggable<C>::_map; \
! EXPLICIT_TEMPLATE C* Pluggable<C>::_selected = NULL;
//@TODO: write a plug-in registerer
|