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
This commit is contained in:
parent
c99a2d3137
commit
5fdfba85be
@ -1,3 +1,9 @@
|
||||
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>
|
||||
|
||||
* libsupc++/exception_support.cc (__cp_pop_exception): Fix
|
||||
|
@ -770,3 +770,28 @@ int main()
|
||||
// .__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);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user