stdcxx-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From se...@apache.org
Subject svn commit: r331868 - /incubator/stdcxx/trunk/include/rw/_defs.h
Date Tue, 08 Nov 2005 19:27:31 GMT
Author: sebor
Date: Tue Nov  8 11:27:26 2005
New Revision: 331868

URL: http://svn.apache.org/viewcvs?rev=331868&view=rev
Log:
2005-11-08  Martin Sebor  <sebor@roguewave.com>

	STDCXX-57
	* _defs.h: Defined _RWSTD_NO_EXPLICIT_INSTANTIATION_BEFORE_DEFINITION
	whenever _RWSTD_NO_EXTERN_TEMPLATE_BEFORE_DEFINITION is #defined.

Modified:
    incubator/stdcxx/trunk/include/rw/_defs.h

Modified: incubator/stdcxx/trunk/include/rw/_defs.h
URL: http://svn.apache.org/viewcvs/incubator/stdcxx/trunk/include/rw/_defs.h?rev=331868&r1=331867&r2=331868&view=diff
==============================================================================
--- incubator/stdcxx/trunk/include/rw/_defs.h (original)
+++ incubator/stdcxx/trunk/include/rw/_defs.h Tue Nov  8 11:27:26 2005
@@ -1409,6 +1409,13 @@
 #endif   // NO_STD_UNCAUGHT_EXCEPTION && NO_GLOBAL_UNCAUGHT_EXCEPTION
 
 
+#ifdef _RWSTD_NO_EXTERN_TEMPLATE_BEFORE_DEFINITION
+#  ifndef _RWSTD_NO_EXPLICIT_INSTANTIATION_BEFORE_DEFINITION
+#    define _RWSTD_NO_EXPLICIT_INSTANTIATION_BEFORE_DEFINITION
+#  endif   // _RWSTD_NO_EXPLICIT_INSTANTIATION_BEFORE_DEFINITION
+#endif   // _RWSTD_NO_EXTERN_TEMPLATE_BEFORE_DEFINITION
+
+
 // allows for efficient compilation of the library sources without
 // support for implicit inclusion: only specializations explicitly
 // instantiated in the library are available
@@ -1419,11 +1426,15 @@
         ||  defined (_RWSTD_NO_INSTANTIATE))
 
 #  ifndef _RWSTD_LIB_SRC
+     // this block is active when using (as opposed to compiling)
+     // the library headers and sources
+
 #    define _RWSTD_DEFINE_TEMPLATE(name)   !_RWSTD_NO ## name ## _DEFINITION
-     // when implicit inclusion is not enabled, determines whether explicit
-     // instantiation directives for library templates can appear lexically
-     // before their complete definition (i.e., before the .cc file that
-     // corresponds to each header) has been #included
+     // when implicit inclusion is not enabled, determines whether extern
+     // template declarations for the corresponding explicit instantiation
+     // directives for library templates may appear lexically before their
+     // complete definitions (i.e., before the .cc file that corresponds
+     // to each header) has been #included
 #    ifndef _RWSTD_NO_EXPLICIT_INSTANTIATION_BEFORE_DEFINITION
        // note that the _FIRST() and _LAST() macros cannot be #defined
        // in terms of the generic macro above because the name argument



Mime
View raw message