Commit 5fdfba85 by Mark Mitchell Committed by Mark Mitchell

gen-num-limits.cc (INSTANTIATIONS): New macro.

	* src/gen-num-limits.cc (INSTANTIATIONS): New macro.
	Use it do explicitly instantiate predicate<T> and value<T> for
	all the builtin Ts.

From-SVN: r39086
parent c99a2d31
2001-01-16 Mark Mitchell <mark@codesourcery.com>
* src/gen-num-limits.cc (INSTANTIATIONS): New macro.
Use it do explicitly instantiate predicate<T> and value<T> for
all the builtin Ts.
2001-01-16 Nathan Sidwell <nathan@codesourcery.com> 2001-01-16 Nathan Sidwell <nathan@codesourcery.com>
* libsupc++/exception_support.cc (__cp_pop_exception): Fix * libsupc++/exception_support.cc (__cp_pop_exception): Fix
......
...@@ -770,3 +770,28 @@ int main() ...@@ -770,3 +770,28 @@ int main()
// .__convert_long_double_d); } // .__convert_long_double_d); }
} }
// G++ doesn't have support for automatic instantiation of static data
// members on platforms that don't have weak symbols. On AIX, in
// particular, static data members must be explicitly instantiated.
// So, we explicitly instantiate some of the ones we need. To save
// typing, we don't name the static data members explicitly; we
// instead name their containing types.
#define INSTANTIATIONS(TYPE) \
template struct predicate<TYPE>; \
template struct value<TYPE>
INSTANTIATIONS (bool);
INSTANTIATIONS (char);
INSTANTIATIONS (signed char);
INSTANTIATIONS (unsigned char);
INSTANTIATIONS (short);
INSTANTIATIONS (unsigned short);
INSTANTIATIONS (int);
INSTANTIATIONS (unsigned int);
INSTANTIATIONS (long);
INSTANTIATIONS (unsigned long);
INSTANTIATIONS (float);
INSTANTIATIONS (double);
INSTANTIATIONS (long double);
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment