View | Details | Return to bug 25864 | Differences between
and this patch

Collapse All | Expand All

(-)libstdc++-v3/configure.ac.jj (+19 lines)
Lines 281-286 fi Link Here
281
# This depends on GLIBCXX CHECK_LINKER_FEATURES, but without it assumes no.
281
# This depends on GLIBCXX CHECK_LINKER_FEATURES, but without it assumes no.
282
GLIBCXX_ENABLE_SYMVERS([yes])
282
GLIBCXX_ENABLE_SYMVERS([yes])
283
283
284
ac_ldbl_compat=no
285
case "$target" in
286
  powerpc*-*-*gnu* | \
287
  sparc*-*-linux* | \
288
  s390*-*-linux* | \
289
  alpha*-*-linux*)
290
  AC_TRY_COMPILE(, [
291
#if !defined __LONG_DOUBLE_128__ || (defined(__sparc__) && defined(__arch64__))
292
#error no need for long double compatibility
293
#endif
294
  ], [ac_ldbl_compat=yes], [ac_ldbl_compat=no])
295
  if test "$ac_ldbl_compat" = yes; then
296
    AC_DEFINE([_GLIBCXX_LONG_DOUBLE_COMPAT],1,
297
	      [Define if compatibility should be provided for -mlong-double-64.])
298
    port_specific_symbol_files="\$(top_srcdir)/config/os/gnu-linux/ldbl-extra.ver"
299
  fi
300
esac
301
GLIBCXX_CONDITIONAL(GLIBCXX_LDBL_COMPAT, test $ac_ldbl_compat = yes)
302
284
# This depends on GLIBCXX_ENABLE_SYMVERS and GLIBCXX_IS_NATIVE.
303
# This depends on GLIBCXX_ENABLE_SYMVERS and GLIBCXX_IS_NATIVE.
285
GLIBCXX_CONFIGURE_TESTSUITE
304
GLIBCXX_CONFIGURE_TESTSUITE
286
305
(-)libstdc++-v3/src/locale.cc.jj (-4 / +39 lines)
Lines 1-4 Link Here
1
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
1
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2006
2
// Free Software Foundation, Inc.
2
// Free Software Foundation, Inc.
3
//
3
//
4
// This file is part of the GNU ISO C++ Library.  This library is free
4
// This file is part of the GNU ISO C++ Library.  This library is free
Lines 41-46 namespace __gnu_internal Link Here
41
  static __glibcxx_mutex_define_initialized(locale_cache_mutex);
41
  static __glibcxx_mutex_define_initialized(locale_cache_mutex);
42
}
42
}
43
43
44
// XXX GLIBCXX_ABI Deprecated
45
#ifdef _GLIBCXX_LONG_DOUBLE_COMPAT
46
# define _GLIBCXX_LOC_ID(mangled) extern std::locale::id mangled
47
_GLIBCXX_LOC_ID (_ZNSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE);
48
_GLIBCXX_LOC_ID (_ZNSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE);
49
_GLIBCXX_LOC_ID (_ZNSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE);
50
_GLIBCXX_LOC_ID (_ZNSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE);
51
# ifdef _GLIBCXX_USE_WCHAR_T
52
_GLIBCXX_LOC_ID (_ZNSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE);
53
_GLIBCXX_LOC_ID (_ZNSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE2idE);
54
_GLIBCXX_LOC_ID (_ZNSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE);
55
_GLIBCXX_LOC_ID (_ZNSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE2idE);
56
# endif
57
#endif
58
44
namespace std 
59
namespace std 
45
{
60
{
46
  // Definitions for static const data members of locale.
61
  // Definitions for static const data members of locale.
Lines 398-406 namespace std Link Here
398
  locale::id::_M_id() const
413
  locale::id::_M_id() const
399
  {
414
  {
400
    if (!_M_index)
415
    if (!_M_index)
401
      _M_index = 1 + __gnu_cxx::__exchange_and_add(&_S_refcount, 1);
416
      {
417
	// XXX GLIBCXX_ABI Deprecated
418
#ifdef _GLIBCXX_LONG_DOUBLE_COMPAT
419
	locale::id *f = 0;
420
# define _GLIBCXX_SYNC_ID(facet, mangled) \
421
	if (this == &::mangled)				\
422
	  f = &facet::id
423
	_GLIBCXX_SYNC_ID (num_get<char>, _ZNSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE);
424
	_GLIBCXX_SYNC_ID (num_put<char>, _ZNSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE);
425
	_GLIBCXX_SYNC_ID (money_get<char>, _ZNSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE);
426
	_GLIBCXX_SYNC_ID (money_put<char>, _ZNSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE);
427
# ifdef _GLIBCXX_USE_WCHAR_T
428
	_GLIBCXX_SYNC_ID (num_get<wchar_t>, _ZNSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE);
429
	_GLIBCXX_SYNC_ID (num_put<wchar_t>, _ZNSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE2idE);
430
	_GLIBCXX_SYNC_ID (money_get<wchar_t>, _ZNSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE);
431
	_GLIBCXX_SYNC_ID (money_put<wchar_t>, _ZNSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE2idE);
432
# endif
433
	if (f)
434
	  _M_index = 1 + f->_M_id();
435
	else
436
#endif
437
	  _M_index = 1 + __gnu_cxx::__exchange_and_add(&_S_refcount, 1);
438
      }
402
    return _M_index - 1;
439
    return _M_index - 1;
403
  }
440
  }
404
} // namespace std
441
} // namespace std
405
406
(-)libstdc++-v3/src/ostream-inst.cc.jj (-1 / +17 lines)
Lines 1-6 Link Here
1
// Explicit instantiation file.
1
// Explicit instantiation file.
2
2
3
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002
3
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2006
4
// Free Software Foundation, Inc.
4
// Free Software Foundation, Inc.
5
//
5
//
6
// This file is part of the GNU ISO C++ Library.  This library is free
6
// This file is part of the GNU ISO C++ Library.  This library is free
Lines 74-76 namespace std Link Here
74
  template wostream& operator<<(wostream&, _Setw);
74
  template wostream& operator<<(wostream&, _Setw);
75
#endif
75
#endif
76
} // namespace std
76
} // namespace std
77
78
// XXX GLIBCXX_ABI Deprecated
79
#ifdef _GLIBCXX_LONG_DOUBLE_COMPAT
80
81
#define _GLIBCXX_LDBL_COMPAT(dbl, ldbl) \
82
  extern "C" void ldbl (void) __attribute__ ((alias (#dbl), weak))
83
_GLIBCXX_LDBL_COMPAT (_ZNSolsEd, _ZNSolsEe);
84
_GLIBCXX_LDBL_COMPAT (_ZNSt13basic_ostreamIwSt11char_traitsIwEElsEd,
85
		      _ZNSt13basic_ostreamIwSt11char_traitsIwEElsEe);
86
// These 2 are in GCC 4.2+ only so far
87
// _GLIBCXX_LDBL_COMPAT (_ZNSo9_M_insertIdEERSoT_,
88
//			 _ZNSo9_M_insertIeEERSoT_);
89
// _GLIBCXX_LDBL_COMPAT (_ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertIdEERS2_T_,
90
//			 _ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertIeEERS2_T_);
91
92
#endif // _GLIBCXX_LONG_DOUBLE_COMPAT
(-)libstdc++-v3/src/locale-inst.cc.jj (-2 / +48 lines)
Lines 1-6 Link Here
1
// Locale support -*- C++ -*-
1
// Locale support -*- C++ -*-
2
2
3
// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004
3
// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2006
4
// Free Software Foundation, Inc.
4
// Free Software Foundation, Inc.
5
//
5
//
6
// This file is part of the GNU ISO C++ Library.  This library is free
6
// This file is part of the GNU ISO C++ Library.  This library is free
Lines 37-42 Link Here
37
// Instantiation configuration.
37
// Instantiation configuration.
38
#ifndef C
38
#ifndef C
39
# define C char
39
# define C char
40
# define C_is_char
40
#endif
41
#endif
41
42
42
namespace std
43
namespace std
Lines 48-53 namespace std Link Here
48
  template struct __moneypunct_cache<C, true>;
49
  template struct __moneypunct_cache<C, true>;
49
  template class moneypunct_byname<C, false>;
50
  template class moneypunct_byname<C, false>;
50
  template class moneypunct_byname<C, true>;
51
  template class moneypunct_byname<C, true>;
52
_GLIBCXX_BEGIN_LDBL_NAMESPACE
51
  template class money_get<C, istreambuf_iterator<C> >;
53
  template class money_get<C, istreambuf_iterator<C> >;
52
  template class money_put<C, ostreambuf_iterator<C> >;
54
  template class money_put<C, ostreambuf_iterator<C> >;
53
  template
55
  template
Lines 73-83 namespace std Link Here
73
    money_put<C, ostreambuf_iterator<C> >::
75
    money_put<C, ostreambuf_iterator<C> >::
74
    _M_insert<false>(ostreambuf_iterator<C>, ios_base&, C, 
76
    _M_insert<false>(ostreambuf_iterator<C>, ios_base&, C, 
75
		     const string_type&) const;
77
		     const string_type&) const;
78
_GLIBCXX_END_LDBL_NAMESPACE
76
79
77
  // numpunct, numpunct_byname, num_get, and num_put
80
  // numpunct, numpunct_byname, num_get, and num_put
78
  template class numpunct<C>;
81
  template class numpunct<C>;
79
  template struct __numpunct_cache<C>;
82
  template struct __numpunct_cache<C>;
80
  template class numpunct_byname<C>;
83
  template class numpunct_byname<C>;
84
_GLIBCXX_BEGIN_LDBL_NAMESPACE
81
  template class num_get<C, istreambuf_iterator<C> >;
85
  template class num_get<C, istreambuf_iterator<C> >;
82
  template class num_put<C, ostreambuf_iterator<C> >; 
86
  template class num_put<C, ostreambuf_iterator<C> >; 
83
  template
87
  template
Lines 161-167 namespace std Link Here
161
    num_put<C, ostreambuf_iterator<C> >::
165
    num_put<C, ostreambuf_iterator<C> >::
162
    _M_insert_float(ostreambuf_iterator<C>, ios_base&, C, char, 
166
    _M_insert_float(ostreambuf_iterator<C>, ios_base&, C, char, 
163
		    long double) const;
167
		    long double) const;
164
  
168
_GLIBCXX_END_LDBL_NAMESPACE
169
165
  // time_get and time_put
170
  // time_get and time_put
166
  template class __timepunct<C>;
171
  template class __timepunct<C>;
167
  template struct __timepunct_cache<C>;
172
  template struct __timepunct_cache<C>;
Lines 314-316 namespace std Link Here
314
		  ios_base::fmtflags, bool);
319
		  ios_base::fmtflags, bool);
315
#endif
320
#endif
316
} // namespace std
321
} // namespace std
322
323
// XXX GLIBCXX_ABI Deprecated
324
#if defined _GLIBCXX_LONG_DOUBLE_COMPAT && defined C_is_char
325
326
#define _GLIBCXX_LDBL_COMPAT(dbl, ldbl) \
327
  extern "C" void ldbl (void) __attribute__ ((alias (#dbl), weak))
328
329
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIjEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_,
330
		     _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIjEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_);
331
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIlEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_,
332
		     _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIlEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_);
333
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intImEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_,
334
		     _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intImEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_);
335
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intItEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_,
336
		     _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intItEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_);
337
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIxEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_,
338
		     _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIxEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_);
339
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIyEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_,
340
		     _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIyEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_);
341
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intIlEES4_S4_RSt8ios_basecT_,
342
		     _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intIlEES3_S3_RSt8ios_basecT_);
343
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intImEES4_S4_RSt8ios_basecT_,
344
		     _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intImEES3_S3_RSt8ios_basecT_);
345
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intIxEES4_S4_RSt8ios_basecT_,
346
		     _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intIxEES3_S3_RSt8ios_basecT_);
347
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intIyEES4_S4_RSt8ios_basecT_,
348
		     _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intIyEES3_S3_RSt8ios_basecT_);
349
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE15_M_insert_floatIdEES4_S4_RSt8ios_baseccT_,
350
		     _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE15_M_insert_floatIdEES3_S3_RSt8ios_baseccT_);
351
_GLIBCXX_LDBL_COMPAT(_ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE15_M_insert_floatIdEES3_S3_RSt8ios_baseccT_,
352
		     _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE15_M_insert_floatIeEES3_S3_RSt8ios_baseccT_);
353
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE10_M_extractILb0EEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRSs,
354
		     _ZNKSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE10_M_extractILb0EEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRSs);
355
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE10_M_extractILb1EEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRSs,
356
		     _ZNKSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE10_M_extractILb1EEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRSs);
357
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE9_M_insertILb0EEES4_S4_RSt8ios_basecRKSs,
358
		     _ZNKSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE9_M_insertILb0EEES3_S3_RSt8ios_basecRKSs);
359
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE9_M_insertILb1EEES4_S4_RSt8ios_basecRKSs,
360
		     _ZNKSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE9_M_insertILb1EEES3_S3_RSt8ios_basecRKSs);
361
362
#endif // _GLIBCXX_LONG_DOUBLE_COMPAT
(-)libstdc++-v3/src/compatibility.cc.jj (-1 / +103 lines)
Lines 1-6 Link Here
1
// Compatibility symbols for previous versions -*- C++ -*-
1
// Compatibility symbols for previous versions -*- C++ -*-
2
2
3
// Copyright (C) 2005
3
// Copyright (C) 2005, 2006
4
// Free Software Foundation, Inc.
4
// Free Software Foundation, Inc.
5
//
5
//
6
// This file is part of the GNU ISO C++ Library.  This library is free
6
// This file is part of the GNU ISO C++ Library.  This library is free
Lines 49-54 Link Here
49
#include <istream>
49
#include <istream>
50
#include <fstream>
50
#include <fstream>
51
#include <sstream>
51
#include <sstream>
52
#include <cmath>
52
53
53
namespace std
54
namespace std
54
{
55
{
Lines 362-367 namespace std Link Here
362
363
363
#endif
364
#endif
364
365
366
// gcc-4.1.0
367
#ifdef _GLIBCXX_LONG_DOUBLE_COMPAT
368
#define _GLIBCXX_MATHL_WRAPPER(name, argdecl, args, ver) \
369
extern "C" double						\
370
__ ## name ## l_wrapper argdecl					\
371
{								\
372
  return name args;						\
373
}								\
374
asm (".symver __" #name "l_wrapper, " #name "l@" #ver)
375
376
#define _GLIBCXX_MATHL_WRAPPER1(name, ver) \
377
  _GLIBCXX_MATHL_WRAPPER (name, (double x), (x), ver)
378
379
#define _GLIBCXX_MATHL_WRAPPER2(name, ver) \
380
  _GLIBCXX_MATHL_WRAPPER (name, (double x, double y), (x, y), ver)
381
382
#ifdef _GLIBCXX_HAVE_ACOSL
383
_GLIBCXX_MATHL_WRAPPER1 (acos, GLIBCXX_3.4.3);
384
#endif
385
#ifdef _GLIBCXX_HAVE_ASINL
386
_GLIBCXX_MATHL_WRAPPER1 (asin, GLIBCXX_3.4.3);
387
#endif
388
#ifdef _GLIBCXX_HAVE_ATAN2L
389
_GLIBCXX_MATHL_WRAPPER2 (atan2, GLIBCXX_3.4);
390
#endif
391
#ifdef _GLIBCXX_HAVE_ATANL
392
_GLIBCXX_MATHL_WRAPPER1 (atan, GLIBCXX_3.4.3);
393
#endif
394
#ifdef _GLIBCXX_HAVE_CEILL
395
_GLIBCXX_MATHL_WRAPPER1 (ceil, GLIBCXX_3.4.3);
396
#endif
397
#ifdef _GLIBCXX_HAVE_COSHL
398
_GLIBCXX_MATHL_WRAPPER1 (cosh, GLIBCXX_3.4);
399
#endif
400
#ifdef _GLIBCXX_HAVE_COSL
401
_GLIBCXX_MATHL_WRAPPER1 (cos, GLIBCXX_3.4);
402
#endif
403
#ifdef _GLIBCXX_HAVE_EXPL
404
_GLIBCXX_MATHL_WRAPPER1 (exp, GLIBCXX_3.4);
405
#endif
406
#ifdef _GLIBCXX_HAVE_FLOORL
407
_GLIBCXX_MATHL_WRAPPER1 (floor, GLIBCXX_3.4.3);
408
#endif
409
#ifdef _GLIBCXX_HAVE_FMODL
410
_GLIBCXX_MATHL_WRAPPER2 (fmod, GLIBCXX_3.4.3);
411
#endif
412
#ifdef _GLIBCXX_HAVE_FREXPL
413
_GLIBCXX_MATHL_WRAPPER (frexp, (double x, int *y), (x, y), GLIBCXX_3.4.3);
414
#endif
415
#ifdef _GLIBCXX_HAVE_HYPOTL
416
_GLIBCXX_MATHL_WRAPPER2 (hypot, GLIBCXX_3.4);
417
#endif
418
#ifdef _GLIBCXX_HAVE_LDEXPL
419
_GLIBCXX_MATHL_WRAPPER (ldexp, (double x, int y), (x, y), GLIBCXX_3.4.3);
420
#endif
421
#ifdef _GLIBCXX_HAVE_LOG10L
422
_GLIBCXX_MATHL_WRAPPER1 (log10, GLIBCXX_3.4);
423
#endif
424
#ifdef _GLIBCXX_HAVE_LOGL
425
_GLIBCXX_MATHL_WRAPPER1 (log, GLIBCXX_3.4);
426
#endif
427
#ifdef _GLIBCXX_HAVE_MODFL
428
_GLIBCXX_MATHL_WRAPPER (modf, (double x, double *y), (x, y), GLIBCXX_3.4.3);
429
#endif
430
#ifdef _GLIBCXX_HAVE_POWL
431
_GLIBCXX_MATHL_WRAPPER2 (pow, GLIBCXX_3.4);
432
#endif
433
#ifdef _GLIBCXX_HAVE_SINHL
434
_GLIBCXX_MATHL_WRAPPER1 (sinh, GLIBCXX_3.4);
435
#endif
436
#ifdef _GLIBCXX_HAVE_SINL
437
_GLIBCXX_MATHL_WRAPPER1 (sin, GLIBCXX_3.4);
438
#endif
439
#ifdef _GLIBCXX_HAVE_SQRTL
440
_GLIBCXX_MATHL_WRAPPER1 (sqrt, GLIBCXX_3.4);
441
#endif
442
#ifdef _GLIBCXX_HAVE_TANHL
443
_GLIBCXX_MATHL_WRAPPER1 (tanh, GLIBCXX_3.4);
444
#endif
445
#ifdef _GLIBCXX_HAVE_TANL
446
_GLIBCXX_MATHL_WRAPPER1 (tan, GLIBCXX_3.4);
447
#endif
448
#endif // _GLIBCXX_LONG_DOUBLE_COMPAT
449
450
#ifdef _GLIBCXX_LONG_DOUBLE_COMPAT
451
extern void *_ZTVN10__cxxabiv123__fundamental_type_infoE[];
452
extern void *_ZTVN10__cxxabiv119__pointer_type_infoE[];
453
extern __attribute__((used, weak)) const char _ZTSe[2] = "e";
454
extern __attribute__((used, weak)) const char _ZTSPe[3] = "Pe";
455
extern __attribute__((used, weak)) const char _ZTSPKe[4] = "PKe";
456
extern __attribute__((used, weak)) const void *_ZTIe[2]
457
  = { (void *) &_ZTVN10__cxxabiv123__fundamental_type_infoE[2],
458
      (void *) _ZTSe };
459
extern __attribute__((used, weak)) const void *_ZTIPe[4]
460
  = { (void *) &_ZTVN10__cxxabiv119__pointer_type_infoE[2],
461
      (void *) _ZTSPe, (void *) 0L, (void *) _ZTIe };
462
extern __attribute__((used, weak)) const void *_ZTIPKe[4]
463
  = { (void *) &_ZTVN10__cxxabiv119__pointer_type_infoE[2],
464
      (void *) _ZTSPKe, (void *) 1L, (void *) _ZTIe };
465
#endif // _GLIBCXX_LONG_DOUBLE_COMPAT
466
365
#ifdef __APPLE__
467
#ifdef __APPLE__
366
#if (defined(__ppc__) || defined (__ppc64__)) && defined (PIC)
468
#if (defined(__ppc__) || defined (__ppc64__)) && defined (PIC)
367
/* __eprintf shouldn't have been made visible from libstdc++, or
469
/* __eprintf shouldn't have been made visible from libstdc++, or
(-)libstdc++-v3/src/limits.cc.jj (-1 / +32 lines)
Lines 1-6 Link Here
1
// Static data members of -*- C++ -*- numeric_limits classes
1
// Static data members of -*- C++ -*- numeric_limits classes
2
2
3
// Copyright (C) 1999, 2001, 2002 Free Software Foundation, Inc.
3
// Copyright (C) 1999, 2001, 2002, 2006 Free Software Foundation, Inc.
4
//
4
//
5
// This file is part of the GNU ISO C++ Library.  This library is free
5
// This file is part of the GNU ISO C++ Library.  This library is free
6
// software; you can redistribute it and/or modify it under the
6
// software; you can redistribute it and/or modify it under the
Lines 447-449 namespace std Link Here
447
  const bool numeric_limits<long double>::tinyness_before;
447
  const bool numeric_limits<long double>::tinyness_before;
448
  const float_round_style numeric_limits<long double>::round_style;
448
  const float_round_style numeric_limits<long double>::round_style;
449
} // namespace std
449
} // namespace std
450
451
// XXX GLIBCXX_ABI Deprecated
452
#ifdef _GLIBCXX_LONG_DOUBLE_COMPAT
453
454
#define _GLIBCXX_NUM_LIM_COMPAT(type, member, len) \
455
  extern "C" type _ZNSt14numeric_limitsIeE ## len ## member ## E \
456
  __attribute__ ((alias ("_ZNSt14numeric_limitsIdE" #len #member "E")))
457
_GLIBCXX_NUM_LIM_COMPAT (bool, is_specialized, 14);
458
_GLIBCXX_NUM_LIM_COMPAT (int, digits, 6);
459
_GLIBCXX_NUM_LIM_COMPAT (int, digits10, 8);
460
_GLIBCXX_NUM_LIM_COMPAT (bool, is_signed, 9);
461
_GLIBCXX_NUM_LIM_COMPAT (bool, is_integer, 10);
462
_GLIBCXX_NUM_LIM_COMPAT (bool, is_exact, 8);
463
_GLIBCXX_NUM_LIM_COMPAT (int, radix, 5);
464
_GLIBCXX_NUM_LIM_COMPAT (int, min_exponent, 12);
465
_GLIBCXX_NUM_LIM_COMPAT (int, min_exponent10, 14);
466
_GLIBCXX_NUM_LIM_COMPAT (int, max_exponent, 12);
467
_GLIBCXX_NUM_LIM_COMPAT (int, max_exponent10, 14);
468
_GLIBCXX_NUM_LIM_COMPAT (bool, has_infinity, 12);
469
_GLIBCXX_NUM_LIM_COMPAT (bool, has_quiet_NaN, 13);
470
_GLIBCXX_NUM_LIM_COMPAT (bool, has_signaling_NaN, 17);
471
_GLIBCXX_NUM_LIM_COMPAT (std::float_denorm_style, has_denorm, 10);
472
_GLIBCXX_NUM_LIM_COMPAT (bool, has_denorm_loss, 15);
473
_GLIBCXX_NUM_LIM_COMPAT (bool, is_iec559, 9);
474
_GLIBCXX_NUM_LIM_COMPAT (bool, is_bounded, 10);
475
_GLIBCXX_NUM_LIM_COMPAT (bool, is_modulo, 9);
476
_GLIBCXX_NUM_LIM_COMPAT (bool, traps, 5);
477
_GLIBCXX_NUM_LIM_COMPAT (bool, tinyness_before, 15);
478
_GLIBCXX_NUM_LIM_COMPAT (std::float_round_style, round_style, 11);
479
480
#endif // _GLIBCXX_LONG_DOUBLE_COMPAT
(-)libstdc++-v3/src/compatibility-ldbl.cc.jj (+73 lines)
Line 0 Link Here
1
// Compatibility symbols for -mlong-double-64 compatibility -*- C++ -*-
2
3
// Copyright (C) 2006
4
// Free Software Foundation, Inc.
5
//
6
// This file is part of the GNU ISO C++ Library.  This library is free
7
// software; you can redistribute it and/or modify it under the
8
// terms of the GNU General Public License as published by the
9
// Free Software Foundation; either version 2, or (at your option)
10
// any later version.
11
12
// This library is distributed in the hope that it will be useful,
13
// but WITHOUT ANY WARRANTY; without even the implied warranty of
14
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15
// GNU General Public License for more details.
16
17
// You should have received a copy of the GNU General Public License along
18
// with this library; see the file COPYING.  If not, write to the Free
19
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
20
// USA.
21
22
// As a special exception, you may use this file as part of a free software
23
// library without restriction.  Specifically, if other files instantiate
24
// templates or use macros or inline functions from this file, or you compile
25
// this file and link it with other files to produce an executable, this
26
// file does not by itself cause the resulting executable to be covered by
27
// the GNU General Public License.  This exception does not however
28
// invalidate any other reasons why the executable file might be covered by
29
// the GNU General Public License.
30
31
#include <locale>
32
33
#ifdef _GLIBCXX_LONG_DOUBLE_COMPAT
34
35
#ifdef __LONG_DOUBLE_128__
36
#error "compatibility-ldbl.cc must be compiled with -mlong-double-64"
37
#endif
38
39
namespace std
40
{
41
#define C char
42
  template class num_get<C, istreambuf_iterator<C> >;
43
  template class num_put<C, ostreambuf_iterator<C> >;
44
  template class money_get<C, istreambuf_iterator<C> >;
45
  template class money_put<C, ostreambuf_iterator<C> >;
46
  template const num_put<C>& use_facet<num_put<C> >(const locale&);
47
  template const num_get<C>& use_facet<num_get<C> >(const locale&);
48
  template const money_put<C>& use_facet<money_put<C> >(const locale&);
49
  template const money_get<C>& use_facet<money_get<C> >(const locale&);
50
  template bool has_facet<num_put<C> >(const locale&);
51
  template bool has_facet<num_get<C> >(const locale&);
52
  template bool has_facet<money_put<C> >(const locale&);
53
  template bool has_facet<money_get<C> >(const locale&);
54
#undef C
55
#ifdef _GLIBCXX_USE_WCHAR_T
56
#define C wchar_t
57
  template class num_get<C, istreambuf_iterator<C> >;
58
  template class num_put<C, ostreambuf_iterator<C> >;
59
  template class money_get<C, istreambuf_iterator<C> >;
60
  template class money_put<C, ostreambuf_iterator<C> >;
61
  template const num_put<C>& use_facet<num_put<C> >(const locale&);
62
  template const num_get<C>& use_facet<num_get<C> >(const locale&);
63
  template const money_put<C>& use_facet<money_put<C> >(const locale&);
64
  template const money_get<C>& use_facet<money_get<C> >(const locale&);
65
  template bool has_facet<num_put<C> >(const locale&);
66
  template bool has_facet<num_get<C> >(const locale&);
67
  template bool has_facet<money_put<C> >(const locale&);
68
  template bool has_facet<money_get<C> >(const locale&);
69
#undef C
70
#endif
71
}
72
73
#endif
(-)libstdc++-v3/src/Makefile.am.jj (-5 / +26 lines)
Lines 35-44 libstdc++-symbol.ver: ${glibcxx_srcdir} Link Here
35
		$(port_specific_symbol_files)
35
		$(port_specific_symbol_files)
36
	cp ${glibcxx_srcdir}/$(SYMVER_MAP) ./libstdc++-symbol.ver
36
	cp ${glibcxx_srcdir}/$(SYMVER_MAP) ./libstdc++-symbol.ver
37
	if test "x$(port_specific_symbol_files)" != x; then \
37
	if test "x$(port_specific_symbol_files)" != x; then \
38
	  sed -n '1,/DO NOT DELETE/p' $@ > tmp.top; \
38
	  if grep '^# Appended to version file.' \
39
	  sed -n '/DO NOT DELETE/,$$p' $@ > tmp.bottom; \
39
	       $(port_specific_symbol_files) /dev/null > /dev/null 2>&1; then \
40
	  cat tmp.top $(port_specific_symbol_files) tmp.bottom > $@; \
40
	    cat $(port_specific_symbol_files) >> $@; \
41
	  rm tmp.top tmp.bottom; \
41
	  else \
42
	    sed -n '1,/DO NOT DELETE/p' $@ > tmp.top; \
43
	    sed -n '/DO NOT DELETE/,$$p' $@ > tmp.bottom; \
44
	    cat tmp.top $(port_specific_symbol_files) tmp.bottom > $@; \
45
	    rm tmp.top tmp.bottom; \
46
	  fi; \
42
	fi
47
	fi
43
48
44
if ENABLE_SYMVERS_GNU
49
if ENABLE_SYMVERS_GNU
Lines 113-118 c++locale.cc: ${glibcxx_srcdir}/$(CLOCAL Link Here
113
basic_file.cc: ${glibcxx_srcdir}/$(BASIC_FILE_CC)
118
basic_file.cc: ${glibcxx_srcdir}/$(BASIC_FILE_CC)
114
	$(LN_S) ${glibcxx_srcdir}/$(BASIC_FILE_CC) ./$@ || true
119
	$(LN_S) ${glibcxx_srcdir}/$(BASIC_FILE_CC) ./$@ || true
115
120
121
if GLIBCXX_LDBL_COMPAT
122
ldbl_compat_sources = compatibility-ldbl.cc
123
else
124
ldbl_compat_sources =
125
endif
126
116
# Sources present in the src directory.
127
# Sources present in the src directory.
117
sources = \
128
sources = \
118
	bitmap_allocator.cc \
129
	bitmap_allocator.cc \
Lines 160-166 sources = \ Link Here
160
	wlocale-inst.cc \
171
	wlocale-inst.cc \
161
	wstring-inst.cc \
172
	wstring-inst.cc \
162
	${host_sources} \
173
	${host_sources} \
163
	${host_sources_extra}
174
	${host_sources_extra} \
175
	${ldbl_compat_sources}
164
176
165
VPATH = $(top_srcdir)/src:$(top_srcdir)
177
VPATH = $(top_srcdir)/src:$(top_srcdir)
166
178
Lines 191-196 concept-inst.lo: concept-inst.cc Link Here
191
concept-inst.o: concept-inst.cc
203
concept-inst.o: concept-inst.cc
192
	$(CXXCOMPILE) -D_GLIBCXX_CONCEPT_CHECKS -fimplicit-templates -c $<
204
	$(CXXCOMPILE) -D_GLIBCXX_CONCEPT_CHECKS -fimplicit-templates -c $<
193
205
206
if GLIBCXX_LDBL_COMPAT
207
# Use special rules for compatibility-ldbl.cc compilation, as we need to
208
# pass -mlong-double-64.
209
compatibility-ldbl.lo: compatibility-ldbl.cc
210
	$(LTCXXCOMPILE) -mlong-double-64 -c $<
211
compatibility-ldbl.o: compatibility-ldbl.cc
212
	$(CXXCOMPILE) -mlong-double-64 -c $<
213
endif
214
194
# AM_CXXFLAGS needs to be in each subdirectory so that it can be
215
# AM_CXXFLAGS needs to be in each subdirectory so that it can be
195
# modified in a per-library or per-sub-library way.  Need to manually
216
# modified in a per-library or per-sub-library way.  Need to manually
196
# set this option because CONFIG_CXXFLAGS has to be after
217
# set this option because CONFIG_CXXFLAGS has to be after
(-)libstdc++-v3/src/Makefile.in.jj (-9 / +43 lines)
Lines 59-69 am__strip_dir = `echo $$p | sed -e 's|^. Link Here
59
am__installdirs = "$(DESTDIR)$(toolexeclibdir)"
59
am__installdirs = "$(DESTDIR)$(toolexeclibdir)"
60
toolexeclibLTLIBRARIES_INSTALL = $(INSTALL)
60
toolexeclibLTLIBRARIES_INSTALL = $(INSTALL)
61
LTLIBRARIES = $(toolexeclib_LTLIBRARIES)
61
LTLIBRARIES = $(toolexeclib_LTLIBRARIES)
62
am__libstdc___la_SOURCES_DIST = bitmap_allocator.cc pool_allocator.cc \
63
	mt_allocator.cc codecvt.cc compatibility.cc complex_io.cc \
64
	ctype.cc debug.cc debug_list.cc functexcept.cc \
65
	globals_locale.cc globals_io.cc ios.cc ios_failure.cc \
66
	ios_init.cc ios_locale.cc limits.cc list.cc locale.cc \
67
	locale_init.cc locale_facets.cc localename.cc stdexcept.cc \
68
	strstream.cc tree.cc allocator-inst.cc concept-inst.cc \
69
	fstream-inst.cc ext-inst.cc ios-inst.cc iostream-inst.cc \
70
	istream-inst.cc istream.cc locale-inst.cc locale-misc-inst.cc \
71
	misc-inst.cc ostream-inst.cc sstream-inst.cc streambuf-inst.cc \
72
	streambuf.cc string-inst.cc valarray-inst.cc wlocale-inst.cc \
73
	wstring-inst.cc atomicity.cc codecvt_members.cc \
74
	collate_members.cc ctype_members.cc messages_members.cc \
75
	monetary_members.cc numeric_members.cc time_members.cc \
76
	basic_file.cc c++locale.cc compatibility-ldbl.cc
62
am__objects_1 = atomicity.lo codecvt_members.lo collate_members.lo \
77
am__objects_1 = atomicity.lo codecvt_members.lo collate_members.lo \
63
	ctype_members.lo messages_members.lo monetary_members.lo \
78
	ctype_members.lo messages_members.lo monetary_members.lo \
64
	numeric_members.lo time_members.lo
79
	numeric_members.lo time_members.lo
65
am__objects_2 = basic_file.lo c++locale.lo
80
am__objects_2 = basic_file.lo c++locale.lo
66
am__objects_3 = bitmap_allocator.lo pool_allocator.lo mt_allocator.lo \
81
@GLIBCXX_LDBL_COMPAT_TRUE@am__objects_3 = compatibility-ldbl.lo
82
am__objects_4 = bitmap_allocator.lo pool_allocator.lo mt_allocator.lo \
67
	codecvt.lo compatibility.lo complex_io.lo ctype.lo debug.lo \
83
	codecvt.lo compatibility.lo complex_io.lo ctype.lo debug.lo \
68
	debug_list.lo functexcept.lo globals_locale.lo globals_io.lo \
84
	debug_list.lo functexcept.lo globals_locale.lo globals_io.lo \
69
	ios.lo ios_failure.lo ios_init.lo ios_locale.lo limits.lo \
85
	ios.lo ios_failure.lo ios_init.lo ios_locale.lo limits.lo \
Lines 74-81 am__objects_3 = bitmap_allocator.lo pool Link Here
74
	locale-inst.lo locale-misc-inst.lo misc-inst.lo \
90
	locale-inst.lo locale-misc-inst.lo misc-inst.lo \
75
	ostream-inst.lo sstream-inst.lo streambuf-inst.lo streambuf.lo \
91
	ostream-inst.lo sstream-inst.lo streambuf-inst.lo streambuf.lo \
76
	string-inst.lo valarray-inst.lo wlocale-inst.lo \
92
	string-inst.lo valarray-inst.lo wlocale-inst.lo \
77
	wstring-inst.lo $(am__objects_1) $(am__objects_2)
93
	wstring-inst.lo $(am__objects_1) $(am__objects_2) \
78
am_libstdc___la_OBJECTS = $(am__objects_3)
94
	$(am__objects_3)
95
am_libstdc___la_OBJECTS = $(am__objects_4)
79
libstdc___la_OBJECTS = $(am_libstdc___la_OBJECTS)
96
libstdc___la_OBJECTS = $(am_libstdc___la_OBJECTS)
80
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
97
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
81
depcomp =
98
depcomp =
Lines 84-90 CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_IN Link Here
84
	$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
101
	$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
85
CXXLD = $(CXX)
102
CXXLD = $(CXX)
86
SOURCES = $(libstdc___la_SOURCES)
103
SOURCES = $(libstdc___la_SOURCES)
87
DIST_SOURCES = $(libstdc___la_SOURCES)
104
DIST_SOURCES = $(am__libstdc___la_SOURCES_DIST)
88
ETAGS = etags
105
ETAGS = etags
89
CTAGS = ctags
106
CTAGS = ctags
90
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
107
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
Lines 152-157 GLIBCXX_C_HEADERS_C_TRUE = @GLIBCXX_C_HE Link Here
152
GLIBCXX_HOSTED_FALSE = @GLIBCXX_HOSTED_FALSE@
169
GLIBCXX_HOSTED_FALSE = @GLIBCXX_HOSTED_FALSE@
153
GLIBCXX_HOSTED_TRUE = @GLIBCXX_HOSTED_TRUE@
170
GLIBCXX_HOSTED_TRUE = @GLIBCXX_HOSTED_TRUE@
154
GLIBCXX_INCLUDES = @GLIBCXX_INCLUDES@
171
GLIBCXX_INCLUDES = @GLIBCXX_INCLUDES@
172
GLIBCXX_LDBL_COMPAT_FALSE = @GLIBCXX_LDBL_COMPAT_FALSE@
173
GLIBCXX_LDBL_COMPAT_TRUE = @GLIBCXX_LDBL_COMPAT_TRUE@
155
INSTALL_DATA = @INSTALL_DATA@
174
INSTALL_DATA = @INSTALL_DATA@
156
INSTALL_PROGRAM = @INSTALL_PROGRAM@
175
INSTALL_PROGRAM = @INSTALL_PROGRAM@
157
INSTALL_SCRIPT = @INSTALL_SCRIPT@
176
INSTALL_SCRIPT = @INSTALL_SCRIPT@
Lines 302-307 host_sources_extra = \ Link Here
302
	basic_file.cc \
321
	basic_file.cc \
303
	c++locale.cc
322
	c++locale.cc
304
323
324
@GLIBCXX_LDBL_COMPAT_FALSE@ldbl_compat_sources = 
325
@GLIBCXX_LDBL_COMPAT_TRUE@ldbl_compat_sources = compatibility-ldbl.cc
305
326
306
# Sources present in the src directory.
327
# Sources present in the src directory.
307
sources = \
328
sources = \
Lines 350-356 sources = \ Link Here
350
	wlocale-inst.cc \
371
	wlocale-inst.cc \
351
	wstring-inst.cc \
372
	wstring-inst.cc \
352
	${host_sources} \
373
	${host_sources} \
353
	${host_sources_extra}
374
	${host_sources_extra} \
375
	${ldbl_compat_sources}
354
376
355
libstdc___la_SOURCES = $(sources)
377
libstdc___la_SOURCES = $(sources)
356
libstdc___la_LIBADD = \
378
libstdc___la_LIBADD = \
Lines 677-686 libstdc++-symbol.ver: ${glibcxx_srcdir} Link Here
677
		$(port_specific_symbol_files)
699
		$(port_specific_symbol_files)
678
	cp ${glibcxx_srcdir}/$(SYMVER_MAP) ./libstdc++-symbol.ver
700
	cp ${glibcxx_srcdir}/$(SYMVER_MAP) ./libstdc++-symbol.ver
679
	if test "x$(port_specific_symbol_files)" != x; then \
701
	if test "x$(port_specific_symbol_files)" != x; then \
680
	  sed -n '1,/DO NOT DELETE/p' $@ > tmp.top; \
702
	  if grep '^# Appended to version file.' \
681
	  sed -n '/DO NOT DELETE/,$$p' $@ > tmp.bottom; \
703
	       $(port_specific_symbol_files) /dev/null > /dev/null 2>&1; then \
682
	  cat tmp.top $(port_specific_symbol_files) tmp.bottom > $@; \
704
	    cat $(port_specific_symbol_files) >> $@; \
683
	  rm tmp.top tmp.bottom; \
705
	  else \
706
	    sed -n '1,/DO NOT DELETE/p' $@ > tmp.top; \
707
	    sed -n '/DO NOT DELETE/,$$p' $@ > tmp.bottom; \
708
	    cat tmp.top $(port_specific_symbol_files) tmp.bottom > $@; \
709
	    rm tmp.top tmp.bottom; \
710
	  fi; \
684
	fi
711
	fi
685
@ENABLE_SYMVERS_DARWIN_EXPORT_TRUE@@ENABLE_SYMVERS_GNU_FALSE@libstdc++-symbol.explist : libstdc++-symbol.ver \
712
@ENABLE_SYMVERS_DARWIN_EXPORT_TRUE@@ENABLE_SYMVERS_GNU_FALSE@libstdc++-symbol.explist : libstdc++-symbol.ver \
686
@ENABLE_SYMVERS_DARWIN_EXPORT_TRUE@@ENABLE_SYMVERS_GNU_FALSE@		${glibcxx_srcdir}/scripts/make_exports.pl \
713
@ENABLE_SYMVERS_DARWIN_EXPORT_TRUE@@ENABLE_SYMVERS_GNU_FALSE@		${glibcxx_srcdir}/scripts/make_exports.pl \
Lines 733-738 concept-inst.lo: concept-inst.cc Link Here
733
concept-inst.o: concept-inst.cc
760
concept-inst.o: concept-inst.cc
734
	$(CXXCOMPILE) -D_GLIBCXX_CONCEPT_CHECKS -fimplicit-templates -c $<
761
	$(CXXCOMPILE) -D_GLIBCXX_CONCEPT_CHECKS -fimplicit-templates -c $<
735
762
763
# Use special rules for compatibility-ldbl.cc compilation, as we need to
764
# pass -mlong-double-64.
765
@GLIBCXX_LDBL_COMPAT_TRUE@compatibility-ldbl.lo: compatibility-ldbl.cc
766
@GLIBCXX_LDBL_COMPAT_TRUE@	$(LTCXXCOMPILE) -mlong-double-64 -c $<
767
@GLIBCXX_LDBL_COMPAT_TRUE@compatibility-ldbl.o: compatibility-ldbl.cc
768
@GLIBCXX_LDBL_COMPAT_TRUE@	$(CXXCOMPILE) -mlong-double-64 -c $<
769
736
# Added bits to build debug library.
770
# Added bits to build debug library.
737
@GLIBCXX_BUILD_DEBUG_TRUE@all-local: build_debug
771
@GLIBCXX_BUILD_DEBUG_TRUE@all-local: build_debug
738
@GLIBCXX_BUILD_DEBUG_TRUE@install-data-local: install_debug
772
@GLIBCXX_BUILD_DEBUG_TRUE@install-data-local: install_debug
(-)libstdc++-v3/src/locale-misc-inst.cc.jj (-1 / +18 lines)
Lines 1-6 Link Here
1
// Locale support -*- C++ -*-
1
// Locale support -*- C++ -*-
2
2
3
// Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
3
// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2006
4
// Free Software Foundation, Inc.
4
//
5
//
5
// This file is part of the GNU ISO C++ Library.  This library is free
6
// This file is part of the GNU ISO C++ Library.  This library is free
6
// software; you can redistribute it and/or modify it under the
7
// software; you can redistribute it and/or modify it under the
Line 47 Link Here
49
50
// XXX GLIBCXX_ABI Deprecated
51
#if defined _GLIBCXX_LONG_DOUBLE_COMPAT
52
53
#define _GLIBCXX_LDBL_COMPAT(dbl, ldbl) \
54
  extern "C" void ldbl (void) __attribute__ ((alias (#dbl), weak))
55
56
# if _GLIBCXX_C_LOCALE_GNU
57
_GLIBCXX_LDBL_COMPAT(_ZSt16__convert_from_vIdEiPciPKcT_RKP15__locale_structi,
58
		     _ZSt16__convert_from_vIeEiPciPKcT_RKP15__locale_structi);
59
# else
60
_GLIBCXX_LDBL_COMPAT(_ZSt16__convert_from_vIdEiPciPKcT_RKPii,
61
		     _ZSt16__convert_from_vIeEiPciPKcT_RKPii);
62
# endif
63
64
#endif // _GLIBCXX_LONG_DOUBLE_COMPAT
(-)libstdc++-v3/src/istream-inst.cc.jj (-1 / +17 lines)
Lines 1-6 Link Here
1
// Explicit instantiation file.
1
// Explicit instantiation file.
2
2
3
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002
3
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2006
4
// Free Software Foundation, Inc.
4
// Free Software Foundation, Inc.
5
//
5
//
6
// This file is part of the GNU ISO C++ Library.  This library is free
6
// This file is part of the GNU ISO C++ Library.  This library is free
Lines 68-70 namespace std Link Here
68
  template wistream& operator>>(wistream&, _Setw);
68
  template wistream& operator>>(wistream&, _Setw);
69
#endif
69
#endif
70
} // namespace std
70
} // namespace std
71
72
// XXX GLIBCXX_ABI Deprecated
73
#ifdef _GLIBCXX_LONG_DOUBLE_COMPAT
74
75
#define _GLIBCXX_LDBL_COMPAT(dbl, ldbl) \
76
  extern "C" void ldbl (void) __attribute__ ((alias (#dbl), weak))
77
_GLIBCXX_LDBL_COMPAT (_ZNSirsERd, _ZNSirsERe);
78
_GLIBCXX_LDBL_COMPAT (_ZNSt13basic_istreamIwSt11char_traitsIwEErsERd,
79
		      _ZNSt13basic_istreamIwSt11char_traitsIwEErsERe);
80
// These 2 are in GCC 4.2+ only so far
81
// _GLIBCXX_LDBL_COMPAT (_ZNSi10_M_extractIdEERSiRT_,
82
//			 _ZNSi10_M_extractIeEERSiRT_);
83
// _GLIBCXX_LDBL_COMPAT (_ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractIdEERS2_RT_,
84
//			 _ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractIeEERS2_RT_);
85
86
#endif // _GLIBCXX_LONG_DOUBLE_COMPAT
(-)libstdc++-v3/src/complex_io.cc.jj (-1 / +18 lines)
Lines 1-6 Link Here
1
// The template and inlines for the -*- C++ -*- complex number classes.
1
// The template and inlines for the -*- C++ -*- complex number classes.
2
2
3
// Copyright (C) 2000, 2001 Free Software Foundation, Inc.
3
// Copyright (C) 2000, 2001, 2006 Free Software Foundation, Inc.
4
//
4
//
5
// This file is part of the GNU ISO C++ Library.  This library is free
5
// This file is part of the GNU ISO C++ Library.  This library is free
6
// software; you can redistribute it and/or modify it under the
6
// software; you can redistribute it and/or modify it under the
Lines 91-93 namespace std Link Here
91
               const complex<long double>&);
91
               const complex<long double>&);
92
#endif //_GLIBCXX_USE_WCHAR_T
92
#endif //_GLIBCXX_USE_WCHAR_T
93
} // namespace std
93
} // namespace std
94
95
// XXX GLIBCXX_ABI Deprecated
96
#ifdef _GLIBCXX_LONG_DOUBLE_COMPAT
97
98
#define _GLIBCXX_LDBL_COMPAT(dbl, ldbl) \
99
  extern "C" void ldbl (void) __attribute__ ((alias (#dbl), weak))
100
101
_GLIBCXX_LDBL_COMPAT (_ZStlsIdcSt11char_traitsIcEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E,
102
		      _ZStlsIecSt11char_traitsIcEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E);
103
_GLIBCXX_LDBL_COMPAT (_ZStlsIdwSt11char_traitsIwEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E,
104
		      _ZStlsIewSt11char_traitsIwEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E);
105
_GLIBCXX_LDBL_COMPAT (_ZStrsIdcSt11char_traitsIcEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E,
106
		      _ZStrsIecSt11char_traitsIcEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E);
107
_GLIBCXX_LDBL_COMPAT (_ZStrsIdwSt11char_traitsIwEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E,
108
		      _ZStrsIewSt11char_traitsIwEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E);
109
110
#endif // _GLIBCXX_LONG_DOUBLE_COMPAT
(-)libstdc++-v3/src/wlocale-inst.cc.jj (-1 / +43 lines)
Lines 1-6 Link Here
1
// Locale support -*- C++ -*-
1
// Locale support -*- C++ -*-
2
2
3
// Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
3
// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2006
4
// Free Software Foundation, Inc.
4
//
5
//
5
// This file is part of the GNU ISO C++ Library.  This library is free
6
// This file is part of the GNU ISO C++ Library.  This library is free
6
// software; you can redistribute it and/or modify it under the
7
// software; you can redistribute it and/or modify it under the
Lines 36-39 Link Here
36
#ifdef _GLIBCXX_USE_WCHAR_T
37
#ifdef _GLIBCXX_USE_WCHAR_T
37
#define C wchar_t
38
#define C wchar_t
38
#include "locale-inst.cc"
39
#include "locale-inst.cc"
40
41
// XXX GLIBCXX_ABI Deprecated
42
#if defined _GLIBCXX_LONG_DOUBLE_COMPAT
43
44
#define _GLIBCXX_LDBL_COMPAT(dbl, ldbl) \
45
  extern "C" void ldbl (void) __attribute__ ((alias (#dbl), weak))
46
47
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIjEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_,
48
		     _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIjEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_);
49
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIlEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_,
50
		     _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIlEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_);
51
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intImEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_,
52
		     _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intImEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_);
53
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intItEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_,
54
		     _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intItEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_);
55
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIxEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_,
56
		     _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIxEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_);
57
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIyEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_,
58
		     _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIyEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_);
59
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intIlEES4_S4_RSt8ios_basewT_,
60
		     _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intIlEES3_S3_RSt8ios_basewT_);
61
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intImEES4_S4_RSt8ios_basewT_,
62
		     _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intImEES3_S3_RSt8ios_basewT_);
63
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intIxEES4_S4_RSt8ios_basewT_,
64
		     _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intIxEES3_S3_RSt8ios_basewT_);
65
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intIyEES4_S4_RSt8ios_basewT_,
66
		     _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intIyEES3_S3_RSt8ios_basewT_);
67
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE15_M_insert_floatIdEES4_S4_RSt8ios_basewcT_,
68
		     _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE15_M_insert_floatIdEES3_S3_RSt8ios_basewcT_);
69
_GLIBCXX_LDBL_COMPAT(_ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE15_M_insert_floatIdEES3_S3_RSt8ios_basewcT_,
70
		     _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE15_M_insert_floatIeEES3_S3_RSt8ios_basewcT_);
71
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE10_M_extractILb0EEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRSs,
72
		     _ZNKSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE10_M_extractILb0EEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRSs);
73
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE10_M_extractILb1EEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRSs,
74
		     _ZNKSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE10_M_extractILb1EEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRSs);
75
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE9_M_insertILb0EEES4_S4_RSt8ios_basewRKSbIwS3_SaIwEE,
76
		     _ZNKSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE9_M_insertILb0EEES3_S3_RSt8ios_basewRKSbIwS2_SaIwEE);
77
_GLIBCXX_LDBL_COMPAT(_ZNKSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE9_M_insertILb1EEES4_S4_RSt8ios_basewRKSbIwS3_SaIwEE,
78
		     _ZNKSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE9_M_insertILb1EEES3_S3_RSt8ios_basewRKSbIwS2_SaIwEE);
79
80
#endif // _GLIBCXX_LONG_DOUBLE_COMPAT
39
#endif
81
#endif
(-)libstdc++-v3/config/linker-map.gnu.jj (-14 / +65 lines)
Lines 1-6 Link Here
1
## Linker script for GNU ld 2.13.91+ only.
1
## Linker script for GNU ld 2.13.91+ only.
2
##
2
##
3
## Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
3
## Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
4
##
4
##
5
## This file is part of the libstdc++ version 3 distribution.
5
## This file is part of the libstdc++ version 3 distribution.
6
##
6
##
Lines 44-50 GLIBCXX_3.4 { Link Here
44
      std::basic_[j-n]*;
44
      std::basic_[j-n]*;
45
      std::basic_o[a-e]*;
45
      std::basic_o[a-e]*;
46
#     std::basic_ofstream;
46
#     std::basic_ofstream;
47
      std::basic_o[g-z]*;
47
#     std::basic_o[g-z]*;
48
      std::basic_o[g-r]*;
49
      std::basic_ostr[a-d]*;
50
      std::basic_ostr[f-z]*;
48
      std::basic_[p-r]*;
51
      std::basic_[p-r]*;
49
      std::basic_streambuf*;
52
      std::basic_streambuf*;
50
#     std::basic_string
53
#     std::basic_string
Lines 88-94 GLIBCXX_3.4 { Link Here
88
      std::locale::_[J-Ra-z]*;
91
      std::locale::_[J-Ra-z]*;
89
      std::locale::_S_normalize_category*;
92
      std::locale::_S_normalize_category*;
90
      std::locale::_[T-Za-z]*;
93
      std::locale::_[T-Za-z]*;
91
      std::[A-Zm-r]*;
94
#     std::[A-Zm-r]*;
95
      std::[A-Zmp-r]*;
96
      std::n[^u]*;
97
      std::nu[^m]*;
98
      std::num[^e]*;
99
      std::ostrstream*;
100
      std::out_of_range*;
101
      std::overflow_error*;
92
      std::set_new_handler*;
102
      std::set_new_handler*;
93
      std::set_terminate*;
103
      std::set_terminate*;
94
      std::set_unexpected*;
104
      std::set_unexpected*;
Lines 256-262 GLIBCXX_3.4 { Link Here
256
    _ZNSi[0-9][a-h]*;
266
    _ZNSi[0-9][a-h]*;
257
    _ZNSi[0-9][j-z]*;
267
    _ZNSi[0-9][j-z]*;
258
    _ZNSi6ignoreE[il][il];
268
    _ZNSi6ignoreE[il][il];
259
    _ZNSirsE*;
269
    _ZNSirsE*[^g];
260
270
261
    # std::basic_istream<wchar_t>
271
    # std::basic_istream<wchar_t>
262
    _ZNSt13basic_istreamIwSt11char_traitsIwEEC*;
272
    _ZNSt13basic_istreamIwSt11char_traitsIwEEC*;
Lines 265-271 GLIBCXX_3.4 { Link Here
265
    _ZNSt13basic_istreamIwSt11char_traitsIwEE[0-9][a-h]*;
275
    _ZNSt13basic_istreamIwSt11char_traitsIwEE[0-9][a-h]*;
266
    _ZNSt13basic_istreamIwSt11char_traitsIwEE[0-9][j-z]*;
276
    _ZNSt13basic_istreamIwSt11char_traitsIwEE[0-9][j-z]*;
267
    _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreE[il][ijlm];
277
    _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreE[il][ijlm];
268
    _ZNSt13basic_istreamIwSt11char_traitsIwEErsE*;
278
    _ZNSt13basic_istreamIwSt11char_traitsIwEErsE*[^g];
269
279
270
    # std::istream operators and inserters
280
    # std::istream operators and inserters
271
    _ZSt7getlineI[cw]St11char_traitsI[cw]ESaI[cw]EERSt13basic_istream*;
281
    _ZSt7getlineI[cw]St11char_traitsI[cw]ESaI[cw]EERSt13basic_istream*;
Lines 277-282 GLIBCXX_3.4 { Link Here
277
    _ZStrsIe[cw]St11char_traitsI[cw]EERSt13basic_istream*;
287
    _ZStrsIe[cw]St11char_traitsI[cw]EERSt13basic_istream*;
278
    _ZStrsIf[cw]St11char_traitsI[cw]EERSt13basic_istream*;
288
    _ZStrsIf[cw]St11char_traitsI[cw]EERSt13basic_istream*;
279
289
290
    # std::basic_ostream<char>
291
    _ZNSoC*;
292
    _ZNSoD*;
293
    _ZNKSo6sentrycvbEv;
294
    _ZNSo8_M_write*;
295
    _ZNSo[0-9][a-z]*;
296
    _ZNSolsE*[^g];
297
298
    # std::basic_ostream<wchar_t>
299
    _ZNSt13basic_ostreamIwSt11char_traitsIwEEC*;
300
    _ZNSt13basic_ostreamIwSt11char_traitsIwEED*;
301
    _ZNKSt13basic_ostreamIwSt11char_traitsIwEE[0-9][a-z]*;
302
    _ZNSt13basic_ostreamIwSt11char_traitsIwEE3putEw;
303
    _ZNSt13basic_ostreamIwSt11char_traitsIwEE5flushEv;
304
    _ZNSt13basic_ostreamIwSt11char_traitsIwEE5seekpE*;
305
    _ZNSt13basic_ostreamIwSt11char_traitsIwEE5tellpEv;
306
    _ZNSt13basic_ostreamIwSt11char_traitsIwEE5writeEPKw*;
307
    _ZNSt13basic_ostreamIwSt11char_traitsIwEE6sentry*;
308
    _ZNSt13basic_ostreamIwSt11char_traitsIwEE8_M_write*;
309
    _ZNSt13basic_ostreamIwSt11char_traitsIwEElsE*[^g];
310
311
    # std::ostream operators and inserters
312
    _ZSt4end[ls]I[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
313
    _ZSt5flushI[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
314
    _ZStlsI[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
315
    _ZStlsI[cw]St11char_traitsI[cw]ESaI[cw]EERSt13basic_ostream*;
316
    _ZStlsISt11char_traitsI[cw]EERSt13basic_ostream*;
317
    _ZStlsId[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
318
    _ZStlsIe[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
319
    _ZStlsIf[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
320
280
    # std::locale destructors
321
    # std::locale destructors
281
    _ZNSt6localeD*;
322
    _ZNSt6localeD*;
282
	
323
	
Lines 292-305 GLIBCXX_3.4 { Link Here
292
    _ZNSt8ios_base4InitD*;
333
    _ZNSt8ios_base4InitD*;
293
334
294
    # bool std::has_facet 
335
    # bool std::has_facet 
295
    _ZSt9has_facet*;
336
    _ZSt9has_facetIS*;
296
337
297
    # std::num_get
338
    # std::num_get
298
    _ZNKSt7num_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE*;
339
    _ZNKSt7num_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE*;
299
340
341
    # std::num_put
342
    _ZNKSt7num_putI[cw]St19ostreambuf_iteratorI[cw]St11char_traitsI[cw]EEE*;
343
300
    # std::money_get
344
    # std::money_get
301
    _ZNKSt9money_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE*;
345
    _ZNKSt9money_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE*;
302
346
347
    # std::money_put
348
    _ZNKSt9money_putI[cw]St19ostreambuf_iteratorI[cw]St11char_traitsI[cw]EEE*;
349
350
    # std::numeric_limits
351
    _ZNSt14numeric_limitsI[^g]*;
352
303
    # std::_Rb_tree
353
    # std::_Rb_tree
304
    _ZSt18_Rb_tree_decrementPKSt18_Rb_tree_node_base;
354
    _ZSt18_Rb_tree_decrementPKSt18_Rb_tree_node_base;
305
    _ZSt18_Rb_tree_decrementPSt18_Rb_tree_node_base;
355
    _ZSt18_Rb_tree_decrementPSt18_Rb_tree_node_base;
Lines 327-333 GLIBCXX_3.4 { Link Here
327
    _ZNSt12__basic_fileIcED*;
377
    _ZNSt12__basic_fileIcED*;
328
378
329
    # std::__convert_to_v
379
    # std::__convert_to_v
330
    _ZSt14__convert_to_v*;
380
    _ZSt14__convert_to_vI[^g]*;
331
381
332
    # __gnu_cxx::stdio_sync_filebuf
382
    # __gnu_cxx::stdio_sync_filebuf
333
    _ZTVN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
383
    _ZTVN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
Lines 399-405 GLIBCXX_3.4 { Link Here
399
    _ZTSN9__gnu_cxx13stdio_filebufI[cw]St11char_traitsI[cw]EEE;
449
    _ZTSN9__gnu_cxx13stdio_filebufI[cw]St11char_traitsI[cw]EEE;
400
450
401
    # function-scope static objects requires a guard variable.
451
    # function-scope static objects requires a guard variable.
402
    _ZGVNSt*;
452
    _ZGVNSt[^1]*;
453
    _ZGVNSt1[^7]*;
403
454
404
    # virtual function thunks
455
    # virtual function thunks
405
    _ZThn8_NS*;
456
    _ZThn8_NS*;
Lines 659-667 CXXABI_1.3 { Link Here
659
    _ZTVN10__cxxabiv121__vmi_class_type_infoE;
710
    _ZTVN10__cxxabiv121__vmi_class_type_infoE;
660
711
661
    # typeinfo structure (and some names)
712
    # typeinfo structure (and some names)
662
    _ZTI[a-z];
713
    _ZTI[a-fh-z];
663
    _ZTIP[a-z];
714
    _ZTIP[a-fh-z];
664
    _ZTIPK[a-z];
715
    _ZTIPK[a-fh-z];
665
    _ZTIN10__cxxabiv117__array_type_infoE;
716
    _ZTIN10__cxxabiv117__array_type_infoE;
666
    _ZTIN10__cxxabiv117__class_type_infoE;
717
    _ZTIN10__cxxabiv117__class_type_infoE;
667
    _ZTIN10__cxxabiv116__enum_type_infoE;
718
    _ZTIN10__cxxabiv116__enum_type_infoE;
Lines 674-682 CXXABI_1.3 { Link Here
674
    _ZTIN10__cxxabiv121__vmi_class_type_infoE;
725
    _ZTIN10__cxxabiv121__vmi_class_type_infoE;
675
726
676
    # typeinfo name
727
    # typeinfo name
677
    _ZTS[a-z];
728
    _ZTS[a-fh-z];
678
    _ZTSP[a-z];
729
    _ZTSP[a-fh-z];
679
    _ZTSPK[a-z];
730
    _ZTSPK[a-fh-z];
680
    _ZTSN10__cxxabiv117__array_type_infoE;
731
    _ZTSN10__cxxabiv117__array_type_infoE;
681
    _ZTSN10__cxxabiv117__class_type_infoE;
732
    _ZTSN10__cxxabiv117__class_type_infoE;
682
    _ZTSN10__cxxabiv116__enum_type_infoE;
733
    _ZTSN10__cxxabiv116__enum_type_infoE;
(-)libstdc++-v3/config/locale/gnu/c_locale.cc.jj (-1 / +8 lines)
Lines 1-6 Link Here
1
// Wrapper for underlying C-language localization -*- C++ -*-
1
// Wrapper for underlying C-language localization -*- C++ -*-
2
2
3
// Copyright (C) 2001, 2002, 2003, 2004, 2005 
3
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006
4
// Free Software Foundation, Inc.
4
// Free Software Foundation, Inc.
5
//
5
//
6
// This file is part of the GNU ISO C++ Library.  This library is free
6
// This file is part of the GNU ISO C++ Library.  This library is free
Lines 132-134 namespace std Link Here
132
{
132
{
133
  const char* const* const locale::_S_categories = __gnu_cxx::category_names;
133
  const char* const* const locale::_S_categories = __gnu_cxx::category_names;
134
}  // namespace std
134
}  // namespace std
135
136
// XXX GLIBCXX_ABI Deprecated
137
#ifdef _GLIBCXX_LONG_DOUBLE_COMPAT
138
#define _GLIBCXX_LDBL_COMPAT(dbl, ldbl) \
139
  extern "C" void ldbl (void) __attribute__ ((alias (#dbl)))
140
_GLIBCXX_LDBL_COMPAT(_ZSt14__convert_to_vIdEvPKcRT_RSt12_Ios_IostateRKP15__locale_struct, _ZSt14__convert_to_vIeEvPKcRT_RSt12_Ios_IostateRKP15__locale_struct);
141
#endif // _GLIBCXX_LONG_DOUBLE_COMPAT
(-)libstdc++-v3/config/locale/generic/c_locale.cc.jj (-1 / +8 lines)
Lines 1-6 Link Here
1
// Wrapper for underlying C-language localization -*- C++ -*-
1
// Wrapper for underlying C-language localization -*- C++ -*-
2
2
3
// Copyright (C) 2001, 2002, 2003, 2004, 2005
3
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006
4
// Free Software Foundation, Inc.
4
// Free Software Foundation, Inc.
5
//
5
//
6
// This file is part of the GNU ISO C++ Library.  This library is free
6
// This file is part of the GNU ISO C++ Library.  This library is free
Lines 168-170 namespace std Link Here
168
{
168
{
169
  const char* const* const locale::_S_categories = __gnu_cxx::category_names;
169
  const char* const* const locale::_S_categories = __gnu_cxx::category_names;
170
}  // namespace std
170
}  // namespace std
171
172
// XXX GLIBCXX_ABI Deprecated
173
#ifdef _GLIBCXX_LONG_DOUBLE_COMPAT
174
#define _GLIBCXX_LDBL_COMPAT(dbl, ldbl) \
175
  extern "C" void ldbl (void) __attribute__ ((alias (#dbl)))
176
_GLIBCXX_LDBL_COMPAT(_ZSt14__convert_to_vIdEvPKcRT_RSt12_Ios_IostateRKPi, _ZSt14__convert_to_vIeEvPKcRT_RSt12_Ios_IostateRKPi);
177
#endif // _GLIBCXX_LONG_DOUBLE_COMPAT
(-)libstdc++-v3/config/os/gnu-linux/ldbl-extra.ver.jj (+19 lines)
Line 0 Link Here
1
# Appended to version file.
2
3
GLIBCXX_LDBL_3.4 {
4
  _ZNSt14numeric_limitsIg*;
5
  _ZNSirsERg;
6
  _ZNSolsEg;
7
  _ZNSt13basic_istreamIwSt11char_traitsIwEErsERg;
8
  _ZNSt13basic_ostreamIwSt11char_traitsIwEElsEg;
9
  _ZSt14__convert_to_vIgEvPKcRT_RSt12_Ios_IostateRKP*;
10
  _ZStlsIg[cw]St11char_traitsI[cw]EERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E;
11
  _ZStrsIg[cw]St11char_traitsI[cw]EERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E;
12
  *__gnu_cxx_ldbl128*;
13
};
14
15
CXXABI_LDBL_1.3 {
16
  _ZT[IS]g;
17
  _ZT[IS]Pg;
18
  _ZT[IS]PKg;
19
};
(-)libstdc++-v3/config.h.in.jj (+3 lines)
Lines 658-663 Link Here
658
/* Define to 1 if a full hosted library is built, or 0 if freestanding. */
658
/* Define to 1 if a full hosted library is built, or 0 if freestanding. */
659
#undef _GLIBCXX_HOSTED
659
#undef _GLIBCXX_HOSTED
660
660
661
/* Define if compatibility should be provided for -mlong-double-64. */
662
#undef _GLIBCXX_LONG_DOUBLE_COMPAT
663
661
/* Define if ptrdiff_t is int. */
664
/* Define if ptrdiff_t is int. */
662
#undef _GLIBCXX_PTRDIFF_T_IS_INT
665
#undef _GLIBCXX_PTRDIFF_T_IS_INT
663
666
(-)libstdc++-v3/include/Makefile.am.jj (-2 / +7 lines)
Lines 825-837 ${host_builddir}/c++config.h: ${top_buil Link Here
825
				${glibcxx_srcdir}/include/bits/c++config \
825
				${glibcxx_srcdir}/include/bits/c++config \
826
				stamp-${host_alias} \
826
				stamp-${host_alias} \
827
				${toplevel_srcdir}/gcc/DATESTAMP
827
				${toplevel_srcdir}/gcc/DATESTAMP
828
	@cat ${glibcxx_srcdir}/include/bits/c++config > $@ ;\
828
	@ldbl_compat='' ;\
829
	grep "^[ 	]*#[ 	]*define[ 	][ 	]*_GLIBCXX_LONG_DOUBLE_COMPAT[ 	][ 	]*1[ 	]*$$" \
830
	${CONFIG_HEADER} > /dev/null 2>&1 \
831
	&& ldbl_compat='s,^#undef _GLIBCXX_LONG_DOUBLE_COMPAT$$,#define _GLIBCXX_LONG_DOUBLE_COMPAT 1,' ;\
832
	sed -e "$$ldbl_compat" ${glibcxx_srcdir}/include/bits/c++config > $@ ;\
829
	sed -e 's/^/#define __GLIBCXX__ /' \
833
	sed -e 's/^/#define __GLIBCXX__ /' \
830
            < ${toplevel_srcdir}/gcc/DATESTAMP >> $@ ;\
834
	    < ${toplevel_srcdir}/gcc/DATESTAMP >> $@ ;\
831
	sed -e 's/HAVE_/_GLIBCXX_HAVE_/g' \
835
	sed -e 's/HAVE_/_GLIBCXX_HAVE_/g' \
832
	    -e 's/PACKAGE/_GLIBCXX_PACKAGE/g' \
836
	    -e 's/PACKAGE/_GLIBCXX_PACKAGE/g' \
833
	    -e 's/VERSION/_GLIBCXX_VERSION/g' \
837
	    -e 's/VERSION/_GLIBCXX_VERSION/g' \
834
	    -e 's/WORDS_/_GLIBCXX_WORDS_/g' \
838
	    -e 's/WORDS_/_GLIBCXX_WORDS_/g' \
839
	    -e '/[ 	]_GLIBCXX_LONG_DOUBLE_COMPAT[ 	]/d' \
835
	    < ${CONFIG_HEADER} >> $@ ;\
840
	    < ${CONFIG_HEADER} >> $@ ;\
836
	echo "#endif // _CXXCONFIG_" >>$@
841
	echo "#endif // _CXXCONFIG_" >>$@
837
842
(-)libstdc++-v3/include/bits/c++config.jj (-1 / +21 lines)
Lines 1-6 Link Here
1
// Predefined symbols and macros -*- C++ -*-
1
// Predefined symbols and macros -*- C++ -*-
2
2
3
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
3
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006
4
// Free Software Foundation, Inc.
4
// Free Software Foundation, Inc.
5
//
5
//
6
// This file is part of the GNU ISO C++ Library.  This library is free
6
// This file is part of the GNU ISO C++ Library.  This library is free
Lines 65-70 namespace std Link Here
65
# define _GLIBCXX_STD std
65
# define _GLIBCXX_STD std
66
#endif
66
#endif
67
67
68
/* Define if compatibility should be provided for -mlong-double-64. */
69
#undef _GLIBCXX_LONG_DOUBLE_COMPAT
70
71
// XXX GLIBCXX_ABI Deprecated
72
// Namespace associations for long double 128 mode.
73
#if defined _GLIBCXX_LONG_DOUBLE_COMPAT && defined __LONG_DOUBLE_128__
74
# define _GLIBCXX_LDBL_NAMESPACE __gnu_cxx_ldbl128::
75
# define _GLIBCXX_BEGIN_LDBL_NAMESPACE namespace __gnu_cxx_ldbl128 {
76
# define _GLIBCXX_END_LDBL_NAMESPACE }
77
namespace std
78
{
79
  namespace __gnu_cxx_ldbl128 { }
80
  using namespace __gnu_cxx_ldbl128 __attribute__((__strong__));
81
}
82
#else
83
# define _GLIBCXX_LDBL_NAMESPACE
84
# define _GLIBCXX_BEGIN_LDBL_NAMESPACE
85
# define _GLIBCXX_END_LDBL_NAMESPACE
86
#endif
87
68
// Allow use of "export template." This is currently not a feature
88
// Allow use of "export template." This is currently not a feature
69
// that g++ supports.
89
// that g++ supports.
70
// #define _GLIBCXX_EXPORT_TEMPLATE 1
90
// #define _GLIBCXX_EXPORT_TEMPLATE 1
(-)libstdc++-v3/include/bits/localefwd.h.jj (+4 lines)
Lines 129-138 namespace std Link Here
129
    class codecvt_byname;
129
    class codecvt_byname;
130
130
131
  // 22.2.2 and 22.2.3 numeric
131
  // 22.2.2 and 22.2.3 numeric
132
_GLIBCXX_BEGIN_LDBL_NAMESPACE
132
  template<typename _CharT, typename _InIter = istreambuf_iterator<_CharT> >
133
  template<typename _CharT, typename _InIter = istreambuf_iterator<_CharT> >
133
    class num_get;
134
    class num_get;
134
  template<typename _CharT, typename _OutIter = ostreambuf_iterator<_CharT> >
135
  template<typename _CharT, typename _OutIter = ostreambuf_iterator<_CharT> >
135
    class num_put;
136
    class num_put;
137
_GLIBCXX_END_LDBL_NAMESPACE
136
  template<typename _CharT> class numpunct;
138
  template<typename _CharT> class numpunct;
137
  template<typename _CharT> class numpunct_byname;
139
  template<typename _CharT> class numpunct_byname;
138
140
Lines 155-164 namespace std Link Here
155
157
156
  // 22.2.6 money
158
  // 22.2.6 money
157
  class money_base;
159
  class money_base;
160
_GLIBCXX_BEGIN_LDBL_NAMESPACE
158
  template<typename _CharT, typename _InIter =  istreambuf_iterator<_CharT> >
161
  template<typename _CharT, typename _InIter =  istreambuf_iterator<_CharT> >
159
    class money_get;
162
    class money_get;
160
  template<typename _CharT, typename _OutIter = ostreambuf_iterator<_CharT> >
163
  template<typename _CharT, typename _OutIter = ostreambuf_iterator<_CharT> >
161
    class money_put;
164
    class money_put;
165
_GLIBCXX_END_LDBL_NAMESPACE
162
  template<typename _CharT, bool _Intl = false>
166
  template<typename _CharT, bool _Intl = false>
163
    class moneypunct;
167
    class moneypunct;
164
  template<typename _CharT, bool _Intl = false>
168
  template<typename _CharT, bool _Intl = false>
(-)libstdc++-v3/include/bits/locale_facets.h.jj (-1 / +60 lines)
Lines 1-6 Link Here
1
// Locale support -*- C++ -*-
1
// Locale support -*- C++ -*-
2
2
3
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
3
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006
4
// Free Software Foundation, Inc.
4
// Free Software Foundation, Inc.
5
//
5
//
6
// This file is part of the GNU ISO C++ Library.  This library is free
6
// This file is part of the GNU ISO C++ Library.  This library is free
Lines 1910-1915 namespace std Link Here
1910
      ~numpunct_byname() { }
1910
      ~numpunct_byname() { }
1911
    };
1911
    };
1912
1912
1913
_GLIBCXX_BEGIN_LDBL_NAMESPACE
1913
  /**
1914
  /**
1914
   *  @brief  Facet for parsing number strings.
1915
   *  @brief  Facet for parsing number strings.
1915
   *
1916
   *
Lines 2176-2188 namespace std Link Here
2176
      do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
2177
      do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
2177
	     double&) const;
2178
	     double&) const;
2178
2179
2180
      // XXX GLIBCXX_ABI Deprecated
2181
#if defined _GLIBCXX_LONG_DOUBLE_COMPAT && defined __LONG_DOUBLE_128__
2182
      virtual iter_type
2183
      __do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
2184
	       double&) const;
2185
#else
2179
      virtual iter_type
2186
      virtual iter_type
2180
      do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
2187
      do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
2181
	     long double&) const;
2188
	     long double&) const;
2189
#endif
2182
2190
2183
      virtual iter_type
2191
      virtual iter_type
2184
      do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
2192
      do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
2185
	     void*&) const;
2193
	     void*&) const;
2194
2195
      // XXX GLIBCXX_ABI Deprecated
2196
#if defined _GLIBCXX_LONG_DOUBLE_COMPAT && defined __LONG_DOUBLE_128__
2197
      virtual iter_type
2198
      do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
2199
	     long double&) const;
2200
#endif
2186
      //@}
2201
      //@}
2187
    };
2202
    };
2188
2203
Lines 2438-2454 namespace std Link Here
2438
      virtual iter_type
2453
      virtual iter_type
2439
      do_put(iter_type, ios_base&, char_type __fill, double __v) const;
2454
      do_put(iter_type, ios_base&, char_type __fill, double __v) const;
2440
2455
2456
      // XXX GLIBCXX_ABI Deprecated
2457
#if defined _GLIBCXX_LONG_DOUBLE_COMPAT && defined __LONG_DOUBLE_128__
2458
      virtual iter_type
2459
      __do_put(iter_type, ios_base&, char_type __fill, double __v) const;
2460
#else
2441
      virtual iter_type
2461
      virtual iter_type
2442
      do_put(iter_type, ios_base&, char_type __fill, long double __v) const;
2462
      do_put(iter_type, ios_base&, char_type __fill, long double __v) const;
2463
#endif
2443
2464
2444
      virtual iter_type
2465
      virtual iter_type
2445
      do_put(iter_type, ios_base&, char_type __fill, const void* __v) const;
2466
      do_put(iter_type, ios_base&, char_type __fill, const void* __v) const;
2467
2468
      // XXX GLIBCXX_ABI Deprecated
2469
#if defined _GLIBCXX_LONG_DOUBLE_COMPAT && defined __LONG_DOUBLE_128__
2470
      virtual iter_type
2471
      do_put(iter_type, ios_base&, char_type __fill, long double __v) const;
2472
#endif
2446
      //@}
2473
      //@}
2447
    };
2474
    };
2448
2475
2449
  template <typename _CharT, typename _OutIter>
2476
  template <typename _CharT, typename _OutIter>
2450
    locale::id num_put<_CharT, _OutIter>::id;
2477
    locale::id num_put<_CharT, _OutIter>::id;
2451
2478
2479
_GLIBCXX_END_LDBL_NAMESPACE
2452
2480
2453
  /**
2481
  /**
2454
   *  @brief  Facet for localized string comparison.
2482
   *  @brief  Facet for localized string comparison.
Lines 3953-3958 namespace std Link Here
3953
  template<typename _CharT, bool _Intl>
3981
  template<typename _CharT, bool _Intl>
3954
    const bool moneypunct_byname<_CharT, _Intl>::intl;
3982
    const bool moneypunct_byname<_CharT, _Intl>::intl;
3955
3983
3984
_GLIBCXX_BEGIN_LDBL_NAMESPACE
3956
  /**
3985
  /**
3957
   *  @brief  Facet for parsing monetary amounts.
3986
   *  @brief  Facet for parsing monetary amounts.
3958
   *
3987
   *
Lines 4064-4072 namespace std Link Here
4064
       *  value.  This function is a hook for derived classes to change the
4093
       *  value.  This function is a hook for derived classes to change the
4065
       *  value returned.  @see get() for details.
4094
       *  value returned.  @see get() for details.
4066
       */
4095
       */
4096
      // XXX GLIBCXX_ABI Deprecated
4097
#if defined _GLIBCXX_LONG_DOUBLE_COMPAT && defined __LONG_DOUBLE_128__
4098
      virtual iter_type
4099
      __do_get(iter_type __s, iter_type __end, bool __intl, ios_base& __io,
4100
	       ios_base::iostate& __err, double& __units) const;
4101
#else
4067
      virtual iter_type
4102
      virtual iter_type
4068
      do_get(iter_type __s, iter_type __end, bool __intl, ios_base& __io,
4103
      do_get(iter_type __s, iter_type __end, bool __intl, ios_base& __io,
4069
	     ios_base::iostate& __err, long double& __units) const;
4104
	     ios_base::iostate& __err, long double& __units) const;
4105
#endif
4070
4106
4071
      /**
4107
      /**
4072
       *  @brief  Read and parse a monetary value.
4108
       *  @brief  Read and parse a monetary value.
Lines 4079-4084 namespace std Link Here
4079
      do_get(iter_type __s, iter_type __end, bool __intl, ios_base& __io,
4115
      do_get(iter_type __s, iter_type __end, bool __intl, ios_base& __io,
4080
	     ios_base::iostate& __err, string_type& __digits) const;
4116
	     ios_base::iostate& __err, string_type& __digits) const;
4081
4117
4118
      // XXX GLIBCXX_ABI Deprecated
4119
#if defined _GLIBCXX_LONG_DOUBLE_COMPAT && defined __LONG_DOUBLE_128__
4120
      virtual iter_type
4121
      do_get(iter_type __s, iter_type __end, bool __intl, ios_base& __io,
4122
	     ios_base::iostate& __err, long double& __units) const;
4123
#endif
4124
4082
      template<bool _Intl>
4125
      template<bool _Intl>
4083
        iter_type
4126
        iter_type
4084
        _M_extract(iter_type __s, iter_type __end, ios_base& __io,
4127
        _M_extract(iter_type __s, iter_type __end, ios_base& __io,
Lines 4191-4199 namespace std Link Here
4191
       *  @param  units  Place to store result of parsing.
4234
       *  @param  units  Place to store result of parsing.
4192
       *  @return  Iterator after writing.
4235
       *  @return  Iterator after writing.
4193
       */
4236
       */
4237
      // XXX GLIBCXX_ABI Deprecated
4238
#if defined _GLIBCXX_LONG_DOUBLE_COMPAT && defined __LONG_DOUBLE_128__
4239
      virtual iter_type
4240
      __do_put(iter_type __s, bool __intl, ios_base& __io, char_type __fill,
4241
	       double __units) const;
4242
#else
4194
      virtual iter_type
4243
      virtual iter_type
4195
      do_put(iter_type __s, bool __intl, ios_base& __io, char_type __fill,
4244
      do_put(iter_type __s, bool __intl, ios_base& __io, char_type __fill,
4196
	     long double __units) const;
4245
	     long double __units) const;
4246
#endif
4197
4247
4198
      /**
4248
      /**
4199
       *  @brief  Format and output a monetary value.
4249
       *  @brief  Format and output a monetary value.
Lines 4217-4222 namespace std Link Here
4217
      do_put(iter_type __s, bool __intl, ios_base& __io, char_type __fill,
4267
      do_put(iter_type __s, bool __intl, ios_base& __io, char_type __fill,
4218
	     const string_type& __digits) const;
4268
	     const string_type& __digits) const;
4219
4269
4270
      // XXX GLIBCXX_ABI Deprecated
4271
#if defined _GLIBCXX_LONG_DOUBLE_COMPAT && defined __LONG_DOUBLE_128__
4272
      virtual iter_type
4273
      do_put(iter_type __s, bool __intl, ios_base& __io, char_type __fill,
4274
	     long double __units) const;
4275
#endif
4276
4220
      template<bool _Intl>
4277
      template<bool _Intl>
4221
        iter_type
4278
        iter_type
4222
        _M_insert(iter_type __s, ios_base& __io, char_type __fill,
4279
        _M_insert(iter_type __s, ios_base& __io, char_type __fill,
Lines 4226-4231 namespace std Link Here
4226
  template<typename _CharT, typename _OutIter>
4283
  template<typename _CharT, typename _OutIter>
4227
    locale::id money_put<_CharT, _OutIter>::id;
4284
    locale::id money_put<_CharT, _OutIter>::id;
4228
4285
4286
_GLIBCXX_END_LDBL_NAMESPACE
4287
4229
  /**
4288
  /**
4230
   *  @brief  Messages facet base class providing catalog typedef.
4289
   *  @brief  Messages facet base class providing catalog typedef.
4231
   */
4290
   */
(-)libstdc++-v3/include/bits/locale_facets.tcc.jj (-10 / +72 lines)
Lines 1-6 Link Here
1
// Locale support -*- C++ -*-
1
// Locale support -*- C++ -*-
2
2
3
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
3
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006
4
// Free Software Foundation, Inc.
4
// Free Software Foundation, Inc.
5
//
5
//
6
// This file is part of the GNU ISO C++ Library.  This library is free
6
// This file is part of the GNU ISO C++ Library.  This library is free
Lines 272-277 namespace std Link Here
272
  __verify_grouping(const char* __grouping, size_t __grouping_size,
272
  __verify_grouping(const char* __grouping, size_t __grouping_size,
273
		    const string& __grouping_tmp);
273
		    const string& __grouping_tmp);
274
274
275
_GLIBCXX_BEGIN_LDBL_NAMESPACE
276
275
  template<typename _CharT, typename _InIter>
277
  template<typename _CharT, typename _InIter>
276
    _InIter
278
    _InIter
277
    num_get<_CharT, _InIter>::
279
    num_get<_CharT, _InIter>::
Lines 446-451 namespace std Link Here
446
      return __beg;
448
      return __beg;
447
    }
449
    }
448
450
451
_GLIBCXX_END_LDBL_NAMESPACE
452
449
  template<typename _ValueT>
453
  template<typename _ValueT>
450
    struct __to_unsigned_type
454
    struct __to_unsigned_type
451
    { typedef _ValueT __type; };
455
    { typedef _ValueT __type; };
Lines 460-465 namespace std Link Here
460
    { typedef unsigned long long __type; };
464
    { typedef unsigned long long __type; };
461
#endif
465
#endif
462
466
467
_GLIBCXX_BEGIN_LDBL_NAMESPACE
468
463
  template<typename _CharT, typename _InIter>
469
  template<typename _CharT, typename _InIter>
464
    template<typename _ValueT>
470
    template<typename _ValueT>
465
      _InIter
471
      _InIter
Lines 772-777 namespace std Link Here
772
      return __beg;
778
      return __beg;
773
    }
779
    }
774
780
781
#if defined _GLIBCXX_LONG_DOUBLE_COMPAT && defined __LONG_DOUBLE_128__
782
  template<typename _CharT, typename _InIter>
783
    _InIter
784
    num_get<_CharT, _InIter>::
785
    __do_get(iter_type __beg, iter_type __end, ios_base& __io,
786
	     ios_base::iostate& __err, double& __v) const
787
    {
788
      string __xtrc;
789
      __xtrc.reserve(32);
790
      __beg = _M_extract_float(__beg, __end, __io, __err, __xtrc);
791
      std::__convert_to_v(__xtrc.c_str(), __v, __err, _S_get_c_locale());
792
      return __beg;
793
    }
794
#endif
795
775
  template<typename _CharT, typename _InIter>
796
  template<typename _CharT, typename _InIter>
776
    _InIter
797
    _InIter
777
    num_get<_CharT, _InIter>::
798
    num_get<_CharT, _InIter>::
Lines 822-827 namespace std Link Here
822
      __len = static_cast<int>(__w);
843
      __len = static_cast<int>(__w);
823
    }
844
    }
824
845
846
_GLIBCXX_END_LDBL_NAMESPACE
847
825
  // Forwarding functions to peel signed from unsigned integer types and
848
  // Forwarding functions to peel signed from unsigned integer types and
826
  // either cast or compute the absolute value for the former, depending
849
  // either cast or compute the absolute value for the former, depending
827
  // on __basefield.
850
  // on __basefield.
Lines 911-916 namespace std Link Here
911
      return __bufend - __buf;
934
      return __bufend - __buf;
912
    }
935
    }
913
936
937
_GLIBCXX_BEGIN_LDBL_NAMESPACE
938
914
  template<typename _CharT, typename _OutIter>
939
  template<typename _CharT, typename _OutIter>
915
    void
940
    void
916
    num_put<_CharT, _OutIter>::
941
    num_put<_CharT, _OutIter>::
Lines 1233-1238 namespace std Link Here
1233
    do_put(iter_type __s, ios_base& __io, char_type __fill, double __v) const
1258
    do_put(iter_type __s, ios_base& __io, char_type __fill, double __v) const
1234
    { return _M_insert_float(__s, __io, __fill, char(), __v); }
1259
    { return _M_insert_float(__s, __io, __fill, char(), __v); }
1235
1260
1261
#if defined _GLIBCXX_LONG_DOUBLE_COMPAT && defined __LONG_DOUBLE_128__
1262
  template<typename _CharT, typename _OutIter>
1263
    _OutIter
1264
    num_put<_CharT, _OutIter>::
1265
    __do_put(iter_type __s, ios_base& __io, char_type __fill, double __v) const
1266
    { return _M_insert_float(__s, __io, __fill, char(), __v); }
1267
#endif
1268
1236
  template<typename _CharT, typename _OutIter>
1269
  template<typename _CharT, typename _OutIter>
1237
    _OutIter
1270
    _OutIter
1238
    num_put<_CharT, _OutIter>::
1271
    num_put<_CharT, _OutIter>::
Lines 1474-1479 namespace std Link Here
1474
	return __beg;
1507
	return __beg;
1475
      }
1508
      }
1476
1509
1510
#if defined _GLIBCXX_LONG_DOUBLE_COMPAT && defined __LONG_DOUBLE_128__
1511
  template<typename _CharT, typename _InIter>
1512
    _InIter
1513
    money_get<_CharT, _InIter>::
1514
    __do_get(iter_type __beg, iter_type __end, bool __intl, ios_base& __io,
1515
	     ios_base::iostate& __err, double& __units) const
1516
    {
1517
      string __str;
1518
      if (__intl)
1519
	__beg = _M_extract<true>(__beg, __end, __io, __err, __str);
1520
      else
1521
	__beg = _M_extract<false>(__beg, __end, __io, __err, __str);
1522
      std::__convert_to_v(__str.c_str(), __units, __err, _S_get_c_locale());
1523
      return __beg;
1524
    }
1525
#endif
1526
1477
  template<typename _CharT, typename _InIter>
1527
  template<typename _CharT, typename _InIter>
1478
    _InIter
1528
    _InIter
1479
    money_get<_CharT, _InIter>::
1529
    money_get<_CharT, _InIter>::
Lines 1678-1684 namespace std Link Here
1678
	__io.width(0);
1728
	__io.width(0);
1679
	return __s;    
1729
	return __s;    
1680
      }
1730
      }
1681
  
1731
1732
#if defined _GLIBCXX_LONG_DOUBLE_COMPAT && defined __LONG_DOUBLE_128__
1733
  template<typename _CharT, typename _OutIter>
1734
    _OutIter
1735
    money_put<_CharT, _OutIter>::
1736
    __do_put(iter_type __s, bool __intl, ios_base& __io, char_type __fill,
1737
	     double __units) const
1738
    {
1739
      return this->do_put(__s, __intl, __io, __fill, (long double) __units);
1740
    }
1741
#endif
1742
1682
  template<typename _CharT, typename _OutIter>
1743
  template<typename _CharT, typename _OutIter>
1683
    _OutIter
1744
    _OutIter
1684
    money_put<_CharT, _OutIter>::
1745
    money_put<_CharT, _OutIter>::
Lines 1726-1731 namespace std Link Here
1726
    { return __intl ? _M_insert<true>(__s, __io, __fill, __digits)
1787
    { return __intl ? _M_insert<true>(__s, __io, __fill, __digits)
1727
	            : _M_insert<false>(__s, __io, __fill, __digits); }
1788
	            : _M_insert<false>(__s, __io, __fill, __digits); }
1728
1789
1790
_GLIBCXX_END_LDBL_NAMESPACE
1729
1791
1730
  // NB: Not especially useful. Without an ios_base object or some
1792
  // NB: Not especially useful. Without an ios_base object or some
1731
  // kind of locale reference, we are left clawing at the air where
1793
  // kind of locale reference, we are left clawing at the air where
Lines 2511-2522 namespace std Link Here
2511
  extern template class moneypunct<char, true>;
2573
  extern template class moneypunct<char, true>;
2512
  extern template class moneypunct_byname<char, false>;
2574
  extern template class moneypunct_byname<char, false>;
2513
  extern template class moneypunct_byname<char, true>;
2575
  extern template class moneypunct_byname<char, true>;
2514
  extern template class money_get<char>;
2576
  extern template class _GLIBCXX_LDBL_NAMESPACE money_get<char>;
2515
  extern template class money_put<char>;
2577
  extern template class _GLIBCXX_LDBL_NAMESPACE money_put<char>;
2516
  extern template class numpunct<char>;
2578
  extern template class numpunct<char>;
2517
  extern template class numpunct_byname<char>;
2579
  extern template class numpunct_byname<char>;
2518
  extern template class num_get<char>;
2580
  extern template class _GLIBCXX_LDBL_NAMESPACE num_get<char>;
2519
  extern template class num_put<char>;
2581
  extern template class _GLIBCXX_LDBL_NAMESPACE num_put<char>;
2520
  extern template class __timepunct<char>;
2582
  extern template class __timepunct<char>;
2521
  extern template class time_put<char>;
2583
  extern template class time_put<char>;
2522
  extern template class time_put_byname<char>;
2584
  extern template class time_put_byname<char>;
Lines 2638-2649 namespace std Link Here
2638
  extern template class moneypunct<wchar_t, true>;
2700
  extern template class moneypunct<wchar_t, true>;
2639
  extern template class moneypunct_byname<wchar_t, false>;
2701
  extern template class moneypunct_byname<wchar_t, false>;
2640
  extern template class moneypunct_byname<wchar_t, true>;
2702
  extern template class moneypunct_byname<wchar_t, true>;
2641
  extern template class money_get<wchar_t>;
2703
  extern template class _GLIBCXX_LDBL_NAMESPACE money_get<wchar_t>;
2642
  extern template class money_put<wchar_t>;
2704
  extern template class _GLIBCXX_LDBL_NAMESPACE money_put<wchar_t>;
2643
  extern template class numpunct<wchar_t>;
2705
  extern template class numpunct<wchar_t>;
2644
  extern template class numpunct_byname<wchar_t>;
2706
  extern template class numpunct_byname<wchar_t>;
2645
  extern template class num_get<wchar_t>;
2707
  extern template class _GLIBCXX_LDBL_NAMESPACE num_get<wchar_t>;
2646
  extern template class num_put<wchar_t>;
2708
  extern template class _GLIBCXX_LDBL_NAMESPACE num_put<wchar_t>;
2647
  extern template class __timepunct<wchar_t>;
2709
  extern template class __timepunct<wchar_t>;
2648
  extern template class time_put<wchar_t>;
2710
  extern template class time_put<wchar_t>;
2649
  extern template class time_put_byname<wchar_t>;
2711
  extern template class time_put_byname<wchar_t>;
(-)libstdc++-v3/include/Makefile.in.jj (-2 / +7 lines)
Lines 1203-1215 ${host_builddir}/c++config.h: ${top_buil Link Here
1203
				${glibcxx_srcdir}/include/bits/c++config \
1203
				${glibcxx_srcdir}/include/bits/c++config \
1204
				stamp-${host_alias} \
1204
				stamp-${host_alias} \
1205
				${toplevel_srcdir}/gcc/DATESTAMP
1205
				${toplevel_srcdir}/gcc/DATESTAMP
1206
	@cat ${glibcxx_srcdir}/include/bits/c++config > $@ ;\
1206
	@ldbl_compat='' ;\
1207
	grep "^[ 	]*#[ 	]*define[ 	][ 	]*_GLIBCXX_LONG_DOUBLE_COMPAT[ 	][ 	]*1[ 	]*$$" \
1208
	${CONFIG_HEADER} > /dev/null 2>&1 \
1209
	&& ldbl_compat='s,^#undef _GLIBCXX_LONG_DOUBLE_COMPAT$$,#define _GLIBCXX_LONG_DOUBLE_COMPAT 1,' ;\
1210
	sed -e "$$ldbl_compat" ${glibcxx_srcdir}/include/bits/c++config > $@ ;\
1207
	sed -e 's/^/#define __GLIBCXX__ /' \
1211
	sed -e 's/^/#define __GLIBCXX__ /' \
1208
            < ${toplevel_srcdir}/gcc/DATESTAMP >> $@ ;\
1212
	    < ${toplevel_srcdir}/gcc/DATESTAMP >> $@ ;\
1209
	sed -e 's/HAVE_/_GLIBCXX_HAVE_/g' \
1213
	sed -e 's/HAVE_/_GLIBCXX_HAVE_/g' \
1210
	    -e 's/PACKAGE/_GLIBCXX_PACKAGE/g' \
1214
	    -e 's/PACKAGE/_GLIBCXX_PACKAGE/g' \
1211
	    -e 's/VERSION/_GLIBCXX_VERSION/g' \
1215
	    -e 's/VERSION/_GLIBCXX_VERSION/g' \
1212
	    -e 's/WORDS_/_GLIBCXX_WORDS_/g' \
1216
	    -e 's/WORDS_/_GLIBCXX_WORDS_/g' \
1217
	    -e '/[ 	]_GLIBCXX_LONG_DOUBLE_COMPAT[ 	]/d' \
1213
	    < ${CONFIG_HEADER} >> $@ ;\
1218
	    < ${CONFIG_HEADER} >> $@ ;\
1214
	echo "#endif // _CXXCONFIG_" >>$@
1219
	echo "#endif // _CXXCONFIG_" >>$@
1215
1220
(-)libstdc++-v3/testsuite/testsuite_abi.cc.jj (-5 / +6 lines)
Lines 1-6 Link Here
1
// -*- C++ -*-
1
// -*- C++ -*-
2
2
3
// Copyright (C) 2004, 2005 Free Software Foundation, Inc.
3
// Copyright (C) 2004, 2005, 2006 Free Software Foundation, Inc.
4
4
5
// This library is free software; you can redistribute it and/or
5
// This library is free software; you can redistribute it and/or
6
// modify it under the terms of the GNU General Public License as
6
// modify it under the terms of the GNU General Public License as
Lines 186-193 check_version(symbol& test, bool added) Link Here
186
      known_versions.push_back("GLIBCXX_3.4.5");
186
      known_versions.push_back("GLIBCXX_3.4.5");
187
      known_versions.push_back("GLIBCXX_3.4.6");
187
      known_versions.push_back("GLIBCXX_3.4.6");
188
      known_versions.push_back("GLIBCXX_3.4.7");
188
      known_versions.push_back("GLIBCXX_3.4.7");
189
      known_versions.push_back("GLIBCXX_LDBL_3.4");
190
      known_versions.push_back("GLIBCXX_LDBL_3.4.7");
189
      known_versions.push_back("CXXABI_1.3");
191
      known_versions.push_back("CXXABI_1.3");
190
      known_versions.push_back("CXXABI_1.3.1");
192
      known_versions.push_back("CXXABI_1.3.1");
193
      known_versions.push_back("CXXABI_LDBL_1.3");
191
    }
194
    }
192
  compat_list::iterator begin = known_versions.begin();
195
  compat_list::iterator begin = known_versions.begin();
193
  compat_list::iterator end = known_versions.end();
196
  compat_list::iterator end = known_versions.end();
Lines 223-231 check_version(symbol& test, bool added) Link Here
223
	  // New version labels are ok. The rest are not.
226
	  // New version labels are ok. The rest are not.
224
	  compat_list::iterator it2 = find(begin, end, test.name);
227
	  compat_list::iterator it2 = find(begin, end, test.name);
225
	  if (it2 != end)
228
	  if (it2 != end)
226
	    {
229
	    test.version_status = symbol::compatible;
227
	      test.version_status = symbol::compatible;
228
	    }
229
	  else
230
	  else
230
	    test.version_status = symbol::incompatible;
231
	    test.version_status = symbol::incompatible;
231
	}
232
	}
Lines 369-375 compare_symbols(const char* baseline_fil Link Here
369
	  added_names.erase(it);
370
	  added_names.erase(it);
370
	}
371
	}
371
      else
372
      else
372
	  missing_names.push_back(what);
373
	missing_names.push_back(what);
373
    }
374
    }
374
375
375
  // Check missing names for compatibility.
376
  // Check missing names for compatibility.
(-)libstdc++-v3/configure.jj (-1 / +87 lines)
Lines 309-315 ac_includes_default="\ Link Here
309
# include <unistd.h>
309
# include <unistd.h>
310
#endif"
310
#endif"
311
311
312
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS libtool_VERSION multi_basedir build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar glibcxx_builddir glibcxx_srcdir toplevel_srcdir CC ac_ct_CC EXEEXT OBJEXT CXX ac_ct_CXX CFLAGS CXXFLAGS LN_S AS ac_ct_AS AR ac_ct_AR RANLIB ac_ct_RANLIB MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT LIBTOOL CXXCPP CPPFLAGS enable_shared enable_static GLIBCXX_HOSTED_TRUE GLIBCXX_HOSTED_FALSE GLIBCXX_BUILD_PCH_TRUE GLIBCXX_BUILD_PCH_FALSE glibcxx_PCHFLAGS CSTDIO_H BASIC_FILE_H BASIC_FILE_CC CPP EGREP check_msgfmt glibcxx_MOFILES glibcxx_POFILES glibcxx_localedir USE_NLS CLOCALE_H CMESSAGES_H CCODECVT_CC CCOLLATE_CC CCTYPE_CC CMESSAGES_CC CMONEY_CC CNUMERIC_CC CTIME_H CTIME_CC CLOCALE_CC CLOCALE_INTERNAL_H ALLOCATOR_H ALLOCATOR_NAME C_INCLUDE_DIR GLIBCXX_C_HEADERS_C_TRUE GLIBCXX_C_HEADERS_C_FALSE GLIBCXX_C_HEADERS_C_STD_TRUE GLIBCXX_C_HEADERS_C_STD_FALSE GLIBCXX_C_HEADERS_COMPATIBILITY_TRUE GLIBCXX_C_HEADERS_COMPATIBILITY_FALSE DEBUG_FLAGS GLIBCXX_BUILD_DEBUG_TRUE GLIBCXX_BUILD_DEBUG_FALSE EXTRA_CXX_FLAGS glibcxx_thread_h WERROR SECTION_FLAGS SECTION_LDFLAGS OPT_LDFLAGS LIBMATHOBJS LIBICONV SYMVER_MAP port_specific_symbol_files ENABLE_SYMVERS_GNU_TRUE ENABLE_SYMVERS_GNU_FALSE ENABLE_SYMVERS_DARWIN_EXPORT_TRUE ENABLE_SYMVERS_DARWIN_EXPORT_FALSE baseline_dir ATOMICITY_SRCDIR ATOMIC_WORD_SRCDIR CPU_DEFINES_SRCDIR ABI_TWEAKS_SRCDIR OS_INC_SRCDIR glibcxx_prefixdir gxx_include_dir glibcxx_toolexecdir glibcxx_toolexeclibdir GLIBCXX_INCLUDES TOPLEVEL_INCLUDES OPTIMIZE_CXXFLAGS WARN_FLAGS LIBSUPCXX_PICFLAGS LIBOBJS LTLIBOBJS'
312
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS libtool_VERSION multi_basedir build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar glibcxx_builddir glibcxx_srcdir toplevel_srcdir CC ac_ct_CC EXEEXT OBJEXT CXX ac_ct_CXX CFLAGS CXXFLAGS LN_S AS ac_ct_AS AR ac_ct_AR RANLIB ac_ct_RANLIB MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT LIBTOOL CXXCPP CPPFLAGS enable_shared enable_static GLIBCXX_HOSTED_TRUE GLIBCXX_HOSTED_FALSE GLIBCXX_BUILD_PCH_TRUE GLIBCXX_BUILD_PCH_FALSE glibcxx_PCHFLAGS CSTDIO_H BASIC_FILE_H BASIC_FILE_CC CPP EGREP check_msgfmt glibcxx_MOFILES glibcxx_POFILES glibcxx_localedir USE_NLS CLOCALE_H CMESSAGES_H CCODECVT_CC CCOLLATE_CC CCTYPE_CC CMESSAGES_CC CMONEY_CC CNUMERIC_CC CTIME_H CTIME_CC CLOCALE_CC CLOCALE_INTERNAL_H ALLOCATOR_H ALLOCATOR_NAME C_INCLUDE_DIR GLIBCXX_C_HEADERS_C_TRUE GLIBCXX_C_HEADERS_C_FALSE GLIBCXX_C_HEADERS_C_STD_TRUE GLIBCXX_C_HEADERS_C_STD_FALSE GLIBCXX_C_HEADERS_COMPATIBILITY_TRUE GLIBCXX_C_HEADERS_COMPATIBILITY_FALSE DEBUG_FLAGS GLIBCXX_BUILD_DEBUG_TRUE GLIBCXX_BUILD_DEBUG_FALSE EXTRA_CXX_FLAGS glibcxx_thread_h WERROR SECTION_FLAGS SECTION_LDFLAGS OPT_LDFLAGS LIBMATHOBJS LIBICONV SYMVER_MAP port_specific_symbol_files ENABLE_SYMVERS_GNU_TRUE ENABLE_SYMVERS_GNU_FALSE ENABLE_SYMVERS_DARWIN_EXPORT_TRUE ENABLE_SYMVERS_DARWIN_EXPORT_FALSE GLIBCXX_LDBL_COMPAT_TRUE GLIBCXX_LDBL_COMPAT_FALSE baseline_dir ATOMICITY_SRCDIR ATOMIC_WORD_SRCDIR CPU_DEFINES_SRCDIR ABI_TWEAKS_SRCDIR OS_INC_SRCDIR glibcxx_prefixdir gxx_include_dir glibcxx_toolexecdir glibcxx_toolexeclibdir GLIBCXX_INCLUDES TOPLEVEL_INCLUDES OPTIMIZE_CXXFLAGS WARN_FLAGS LIBSUPCXX_PICFLAGS LIBOBJS LTLIBOBJS'
313
ac_subst_files=''
313
ac_subst_files=''
314
314
315
# Initialize some variables set by options.
315
# Initialize some variables set by options.
Lines 87881-87886 echo "${ECHO_T}$glibcxx_ptrdiff_t_is_i" Link Here
87881
echo "$as_me: versioning on shared library symbols is $enable_symvers" >&6;}
87881
echo "$as_me: versioning on shared library symbols is $enable_symvers" >&6;}
87882
87882
87883
87883
87884
ac_ldbl_compat=no
87885
case "$target" in
87886
  powerpc*-*-*gnu* | \
87887
  sparc*-*-linux* | \
87888
  s390*-*-linux* | \
87889
  alpha*-*-linux*)
87890
  cat >conftest.$ac_ext <<_ACEOF
87891
/* confdefs.h.  */
87892
_ACEOF
87893
cat confdefs.h >>conftest.$ac_ext
87894
cat >>conftest.$ac_ext <<_ACEOF
87895
/* end confdefs.h.  */
87896
87897
int
87898
main ()
87899
{
87900
87901
#if !defined __LONG_DOUBLE_128__ || (defined(__sparc__) && defined(__arch64__))
87902
#error no need for long double compatibility
87903
#endif
87904
87905
  ;
87906
  return 0;
87907
}
87908
_ACEOF
87909
rm -f conftest.$ac_objext
87910
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
87911
  (eval $ac_compile) 2>conftest.er1
87912
  ac_status=$?
87913
  grep -v '^ *+' conftest.er1 >conftest.err
87914
  rm -f conftest.er1
87915
  cat conftest.err >&5
87916
  echo "$as_me:$LINENO: \$? = $ac_status" >&5
87917
  (exit $ac_status); } &&
87918
	 { ac_try='test -z "$ac_c_werror_flag"
87919
			 || test ! -s conftest.err'
87920
  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
87921
  (eval $ac_try) 2>&5
87922
  ac_status=$?
87923
  echo "$as_me:$LINENO: \$? = $ac_status" >&5
87924
  (exit $ac_status); }; } &&
87925
	 { ac_try='test -s conftest.$ac_objext'
87926
  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
87927
  (eval $ac_try) 2>&5
87928
  ac_status=$?
87929
  echo "$as_me:$LINENO: \$? = $ac_status" >&5
87930
  (exit $ac_status); }; }; then
87931
  ac_ldbl_compat=yes
87932
else
87933
  echo "$as_me: failed program was:" >&5
87934
sed 's/^/| /' conftest.$ac_ext >&5
87935
87936
ac_ldbl_compat=no
87937
fi
87938
rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
87939
  if test "$ac_ldbl_compat" = yes; then
87940
87941
cat >>confdefs.h <<\_ACEOF
87942
#define _GLIBCXX_LONG_DOUBLE_COMPAT 1
87943
_ACEOF
87944
87945
    port_specific_symbol_files="\$(top_srcdir)/config/os/gnu-linux/ldbl-extra.ver"
87946
  fi
87947
esac
87948
87949
87884
# This depends on GLIBCXX_ENABLE_SYMVERS and GLIBCXX_IS_NATIVE.
87950
# This depends on GLIBCXX_ENABLE_SYMVERS and GLIBCXX_IS_NATIVE.
87885
87951
87886
  if $GLIBCXX_IS_NATIVE ; then
87952
  if $GLIBCXX_IS_NATIVE ; then
Lines 88733-88738 fi Link Here
88733
88799
88734
88800
88735
88801
88802
if test $ac_ldbl_compat = yes; then
88803
  GLIBCXX_LDBL_COMPAT_TRUE=
88804
  GLIBCXX_LDBL_COMPAT_FALSE='#'
88805
else
88806
  GLIBCXX_LDBL_COMPAT_TRUE='#'
88807
  GLIBCXX_LDBL_COMPAT_FALSE=
88808
fi
88809
88810
88811
88812
88736
cat >confcache <<\_ACEOF
88813
cat >confcache <<\_ACEOF
88737
# This file is a shell script that caches the results of configure
88814
# This file is a shell script that caches the results of configure
88738
# tests run on this system so they can be shared between configure
88815
# tests run on this system so they can be shared between configure
Lines 89088-89093 echo "$as_me: error: conditional \"ENABL Link Here
89088
Usually this means the macro was only invoked conditionally." >&2;}
89165
Usually this means the macro was only invoked conditionally." >&2;}
89089
   { (exit 1); exit 1; }; }
89166
   { (exit 1); exit 1; }; }
89090
fi
89167
fi
89168
if test -z "${GLIBCXX_LDBL_COMPAT_TRUE}" && test -z "${GLIBCXX_LDBL_COMPAT_FALSE}"; then
89169
  { { echo "$as_me:$LINENO: error: conditional \"GLIBCXX_LDBL_COMPAT\" was never defined.
89170
Usually this means the macro was only invoked conditionally." >&5
89171
echo "$as_me: error: conditional \"GLIBCXX_LDBL_COMPAT\" was never defined.
89172
Usually this means the macro was only invoked conditionally." >&2;}
89173
   { (exit 1); exit 1; }; }
89174
fi
89091
89175
89092
: ${CONFIG_STATUS=./config.status}
89176
: ${CONFIG_STATUS=./config.status}
89093
ac_clean_files_save=$ac_clean_files
89177
ac_clean_files_save=$ac_clean_files
Lines 89758-89763 s,@ENABLE_SYMVERS_GNU_TRUE@,$ENABLE_SYMV Link Here
89758
s,@ENABLE_SYMVERS_GNU_FALSE@,$ENABLE_SYMVERS_GNU_FALSE,;t t
89842
s,@ENABLE_SYMVERS_GNU_FALSE@,$ENABLE_SYMVERS_GNU_FALSE,;t t
89759
s,@ENABLE_SYMVERS_DARWIN_EXPORT_TRUE@,$ENABLE_SYMVERS_DARWIN_EXPORT_TRUE,;t t
89843
s,@ENABLE_SYMVERS_DARWIN_EXPORT_TRUE@,$ENABLE_SYMVERS_DARWIN_EXPORT_TRUE,;t t
89760
s,@ENABLE_SYMVERS_DARWIN_EXPORT_FALSE@,$ENABLE_SYMVERS_DARWIN_EXPORT_FALSE,;t t
89844
s,@ENABLE_SYMVERS_DARWIN_EXPORT_FALSE@,$ENABLE_SYMVERS_DARWIN_EXPORT_FALSE,;t t
89845
s,@GLIBCXX_LDBL_COMPAT_TRUE@,$GLIBCXX_LDBL_COMPAT_TRUE,;t t
89846
s,@GLIBCXX_LDBL_COMPAT_FALSE@,$GLIBCXX_LDBL_COMPAT_FALSE,;t t
89761
s,@baseline_dir@,$baseline_dir,;t t
89847
s,@baseline_dir@,$baseline_dir,;t t
89762
s,@ATOMICITY_SRCDIR@,$ATOMICITY_SRCDIR,;t t
89848
s,@ATOMICITY_SRCDIR@,$ATOMICITY_SRCDIR,;t t
89763
s,@ATOMIC_WORD_SRCDIR@,$ATOMIC_WORD_SRCDIR,;t t
89849
s,@ATOMIC_WORD_SRCDIR@,$ATOMIC_WORD_SRCDIR,;t t

Return to bug 25864