diff -Nrc3pad gcc-3.0/gcc/cp/ChangeLog gcc-3.0.1/gcc/cp/ChangeLog *** gcc-3.0/gcc/cp/ChangeLog Sun Jun 17 12:39:31 2001 --- gcc-3.0.1/gcc/cp/ChangeLog Sun Aug 19 14:08:14 2001 *************** *** 1,3 **** --- 1,163 ---- + 2001-08-19 Release Manager + + * GCC 3.0.1 Released. + + 2001-08-19 Release Manager + + * GCC 3.0.1 Released. + + 2001-08-16 Mark Mitchell + + * cvt.c (convert_to_void): Preserve TREE_SIDE_EFFECTS + on COMPOUND_EXPRs. + + 2001-08-13 Mark Mitchell + + * call.c (build_over_call): Mark COMPOUND_EXPRs generated for + empty class assignment as having side-effects to avoid + spurious warnings. + + 2001-08-07 Nathan Sidwell + + PR c++/3820 + Stop using TYPE_NONCOPIED_PARTS. + * call.c (build_over_call): Be careful when copy constructing + or assigning to an empty class. + * class.c (check_bases_and_members): It has a + COMPLEX_ASSIGN_REF if it has a vptr. + (layout_class_type): Don't add empty class padding to + TYPE_NONCOPIED_PARTS. + (finish_struct_1): Don't add the VFIELD either. + * cp-tree.h (TYPE_HAS_TRIVIAL_INIT_REF): Mention _copy_ + initialization. + + 2001-08-02 Nathan Sidwell + + Remove -fhonor-std. + * NEWS: Document. + * decl2.c (lang_f_options): Remove honor-std. + (unsupported_options): Add honor-std. + * lang-options.h: Remove -fhonor-std, -fno-honor-std. + + 2001-07-31 Nathan Sidwell + + PR c++/3631 + * class.c (update_vtable_entry_for_fn): The fixed adjustment + of a virtual thunk should be from declaring base. + + 2001-07-31 Nathan Sidwell + + * class.c (dfs_ctor_vtable_bases_queue_p): Always walk into + the shared virtual base, so preserving inheritance graph order. + + 2001-07-27 Nathan Sidwell + + * class.c (mark_primary_virtual_base): Don't adjust base + offsets here. + (dfs_unshared_virtual_bases): Adjust them here. + (mark_primary_bases): Explain why we adjust at the end. + + 2001-07-27 Nathan Sidwell + + * class.c (finish_struct_1): When copying the primary base's + VFIELD, make sure we find it is at offset zero. + + 2001-07-26 Nathan Sidwell + + PR c++/3621 + * spew.c (yylex): Only copy the token's lineno, if it is + non-zero. + + 2001-07-26 Nathan Sidwell + + PR c++/3624 + * call.c (resolve_args): Simplify, call + convert_from_reference. + (build_new_op): Resolve and convert from reference ARG1 + earlier. Adjust ARG2 & ARG3 resolve and conversion. + + 2001-07-26 Nathan Sidwell + + PR c++/3152 + * decl.c (grokdeclarator): Detect when a function typedef is + declaring a function, and create last_function_parms correctly. + + 2001-07-25 Nathan Sidwell + + PR c++/3416 + * call.c (build_conditional_expr): Recheck args after + conversions. + * cp-tree.h (build_conditional_expr): Move to correct file. + * typeck.c (decay_conversion): Diagnose any unknown types + reaching here. + (build_binary_op): Don't do initial decay or default + conversions on overloaded functions. + (build_static_cast): Don't do a decay conversion here. + + 2001-07-25 Jason Merrill + + PR c++/3529 + Copied from mainline. + * cvt.c (convert_lvalue): New fn. + * cp-tree.h: Declare it. + * method.c (do_build_assign_ref): Use it. + (do_build_copy_constructor): Convert parm to base types + before calling base constructors. + + 2001-07-25 Nathan Sidwell + + PR c++/3543 + * typeck.c (condition_conversion): Resolve an OFFSET_REF. + * expr.c (cplus_expand_expr): An OFFSET_REF should never get here. + + 2001-07-25 Nathan Sidwell + + * class.c (build_vbase_offset_vbtl_entries): Look for + non-primary base of which we are a sub vtable. + + 2001-07-20 Daniel Berlin + + * Make-lang.in (cp/optimize.o): Depend on $(PARAMS_H), not + params.h. + + 2001-07-18 Xavier Delacour , + Gerald Pfeifer + + * NEWS (Changes in GCC 3.0): Fix typo. + + 2001-07-12 Mark Mitchell + + * decl.c (make_rtl_for_nonlocal_decl): Set DECL_C_HARD_REGISTER + for `register' variables with an asm-specification. + + 2001-07-11 Mark Mitchell + + * semantics.c (finish_asm_stmt): Mark the output operands + to an asm addressable, if necessary. + + 2001-07-10 Mark Mitchell + + * pt.c (tsubst_decl): Set DECL_CONTEXT for namespace-scope + variables. + + 2001-06-19 Richard Sandiford + + * except.c (initialize_handler_parm): Expect __cxa_begin_catch to + return pointers to data members by reference rather than by value. + + 2001-06-18 Jason Merrill + + * class.c (dfs_accumulate_vtbl_inits): Just point to the base we're + sharing a ctor vtable with. Merge code for cases 1 and 2. + (binfo_ctor_vtable): New fn. + (build_vtt_inits, dfs_build_secondary_vptr_vtt_inits): Use it. + + * class.c (dfs_find_final_overrider): Fix logic. + + * pt.c (unify): Don't recurse between the POINTER_TYPE and the + OFFSET_TYPE. If we're adding cv-quals, the extra ones would be on + PARM, not ARG. + 20010617 Release Manager * GCC 3.0 Released. diff -Nrc3pad gcc-3.0/gcc/cp/Make-lang.in gcc-3.0.1/gcc/cp/Make-lang.in *** gcc-3.0/gcc/cp/Make-lang.in Sat May 12 13:32:52 2001 --- gcc-3.0.1/gcc/cp/Make-lang.in Fri Jul 20 12:29:06 2001 *************** cp/semantics.o: cp/semantics.c $(CXX_TRE *** 273,279 **** flags.h $(GGC_H) output.h $(RTL_H) $(TIMEVAR_H) cp/dump.o: cp/dump.c $(CXX_TREE_H) c-dump.h cp/optimize.o: cp/optimize.c $(CXX_TREE_H) rtl.h integrate.h insn-config.h \ ! input.h params.h cp/mangle.o: cp/mangle.c $(CXX_TREE_H) toplev.h cp/parse.o: cp/parse.c $(CXX_TREE_H) flags.h cp/lex.h except.h output.h \ --- 273,279 ---- flags.h $(GGC_H) output.h $(RTL_H) $(TIMEVAR_H) cp/dump.o: cp/dump.c $(CXX_TREE_H) c-dump.h cp/optimize.o: cp/optimize.c $(CXX_TREE_H) rtl.h integrate.h insn-config.h \ ! input.h $(PARAMS_H) cp/mangle.o: cp/mangle.c $(CXX_TREE_H) toplev.h cp/parse.o: cp/parse.c $(CXX_TREE_H) flags.h cp/lex.h except.h output.h \ diff -Nrc3pad gcc-3.0/gcc/cp/NEWS gcc-3.0.1/gcc/cp/NEWS *** gcc-3.0/gcc/cp/NEWS Wed Jun 13 11:25:49 2001 --- gcc-3.0.1/gcc/cp/NEWS Thu Aug 2 07:23:11 2001 *************** *** 1,3 **** --- 1,9 ---- + *** Changes in GCC 3.0.1: + + * -fhonor-std and -fno-honor-std have been removed. -fno-honor-std was + a workaround to allow std compliant code to work with the non-std + compliant libstdc++-v2. libstdc++-v3 is std compliant. + *** Changes in GCC 3.0: * Support for guiding declarations has been removed. *************** *** 9,15 **** * In some obscure cases, functions with the same type could have the same mangled name. This bug caused compiler crashes, link-time clashes, ! and debugger crahses. Fixing this bug required breaking ABI compatibility for the functions involved. The functions in questions are those whose types involve non-type template arguments whose mangled representations require more than one digit. --- 15,21 ---- * In some obscure cases, functions with the same type could have the same mangled name. This bug caused compiler crashes, link-time clashes, ! and debugger crashes. Fixing this bug required breaking ABI compatibility for the functions involved. The functions in questions are those whose types involve non-type template arguments whose mangled representations require more than one digit. diff -Nrc3pad gcc-3.0/gcc/cp/call.c gcc-3.0.1/gcc/cp/call.c *** gcc-3.0/gcc/cp/call.c Wed Jun 6 09:12:34 2001 --- gcc-3.0.1/gcc/cp/call.c Mon Aug 13 13:54:14 2001 *************** resolve_args (args) *** 2546,2560 **** tree t; for (t = args; t; t = TREE_CHAIN (t)) { ! if (TREE_VALUE (t) == error_mark_node) return error_mark_node; ! else if (TREE_CODE (TREE_TYPE (TREE_VALUE (t))) == VOID_TYPE) { error ("invalid use of void expression"); return error_mark_node; } ! else if (TREE_CODE (TREE_VALUE (t)) == OFFSET_REF) ! TREE_VALUE (t) = resolve_offset_ref (TREE_VALUE (t)); } return args; } --- 2546,2564 ---- tree t; for (t = args; t; t = TREE_CHAIN (t)) { ! tree arg = TREE_VALUE (t); ! ! if (arg == error_mark_node) return error_mark_node; ! else if (VOID_TYPE_P (TREE_TYPE (arg))) { error ("invalid use of void expression"); return error_mark_node; } ! else if (TREE_CODE (arg) == OFFSET_REF) ! arg = resolve_offset_ref (arg); ! arg = convert_from_reference (arg); ! TREE_VALUE (t) = arg; } return args; } *************** build_conditional_expr (arg1, arg2, arg3 *** 3082,3087 **** --- 3086,3094 ---- arg3 = decay_conversion (arg3); arg3_type = TREE_TYPE (arg3); + if (arg2 == error_mark_node || arg3 == error_mark_node) + return error_mark_node; + /* [expr.cond] After those conversions, one of the following shall hold: *************** build_new_op (code, flags, arg1, arg2, a *** 3207,3212 **** --- 3214,3223 ---- else fnname = ansi_opname (code); + if (TREE_CODE (arg1) == OFFSET_REF) + arg1 = resolve_offset_ref (arg1); + arg1 = convert_from_reference (arg1); + switch (code) { case NEW_EXPR: *************** build_new_op (code, flags, arg1, arg2, a *** 3223,3241 **** break; } - /* The comma operator can have void args. */ - if (TREE_CODE (arg1) == OFFSET_REF) - arg1 = resolve_offset_ref (arg1); - if (arg2 && TREE_CODE (arg2) == OFFSET_REF) - arg2 = resolve_offset_ref (arg2); - if (arg3 && TREE_CODE (arg3) == OFFSET_REF) - arg3 = resolve_offset_ref (arg3); - - arg1 = convert_from_reference (arg1); if (arg2) ! arg2 = convert_from_reference (arg2); if (arg3) ! arg3 = convert_from_reference (arg3); if (code == COND_EXPR) { --- 3234,3251 ---- break; } if (arg2) ! { ! if (TREE_CODE (arg2) == OFFSET_REF) ! arg2 = resolve_offset_ref (arg2); ! arg2 = convert_from_reference (arg2); ! } if (arg3) ! { ! if (TREE_CODE (arg3) == OFFSET_REF) ! arg3 = resolve_offset_ref (arg3); ! arg3 = convert_from_reference (arg3); ! } if (code == COND_EXPR) { *************** build_over_call (cand, args, flags) *** 4235,4264 **** return build_target_expr_with_type (arg, DECL_CONTEXT (fn)); } else if (! real_lvalue_p (arg) ! || TYPE_HAS_TRIVIAL_INIT_REF (DECL_CONTEXT (fn))) { tree address; tree to = stabilize_reference (build_indirect_ref (TREE_VALUE (args), 0)); ! /* If we're initializing an empty class, then we actually ! have to use a MODIFY_EXPR rather than an INIT_EXPR. The ! reason is that the dummy padding member in the target may ! not actually be allocated if TO is a base class ! subobject. Since we've set TYPE_NONCOPIED_PARTS on the ! padding, a MODIFY_EXPR will preserve its value, which is ! the right thing to do if it's not really padding at all. ! ! It's not safe to just throw away the ARG if we're looking ! at an empty class because the ARG might contain a ! TARGET_EXPR which wants to be bound to TO. If it is not, ! expand_expr will assign a dummy slot for the TARGET_EXPR, ! and we will call a destructor for it, which is wrong, ! because we will also destroy TO, but will never have ! constructed it. */ ! val = build (is_empty_class (DECL_CONTEXT (fn)) ! ? MODIFY_EXPR : INIT_EXPR, ! DECL_CONTEXT (fn), to, arg); address = build_unary_op (ADDR_EXPR, val, 0); /* Avoid a warning about this expression, if the address is never used. */ --- 4245,4263 ---- return build_target_expr_with_type (arg, DECL_CONTEXT (fn)); } else if (! real_lvalue_p (arg) ! /* Empty classes have padding which can be hidden ! inside an (empty) base of the class. This must not ! be touched as it might overlay things. When the ! gcc core learns about empty classes, we can treat it ! like other classes. */ ! || (!is_empty_class (DECL_CONTEXT (fn)) ! && TYPE_HAS_TRIVIAL_INIT_REF (DECL_CONTEXT (fn)))) { tree address; tree to = stabilize_reference (build_indirect_ref (TREE_VALUE (args), 0)); ! val = build (INIT_EXPR, DECL_CONTEXT (fn), to, arg); address = build_unary_op (ADDR_EXPR, val, 0); /* Avoid a warning about this expression, if the address is never used. */ *************** build_over_call (cand, args, flags) *** 4274,4281 **** (build_indirect_ref (TREE_VALUE (converted_args), 0)); arg = build_indirect_ref (TREE_VALUE (TREE_CHAIN (converted_args)), 0); ! val = build (MODIFY_EXPR, TREE_TYPE (to), to, arg); return val; } --- 4273,4295 ---- (build_indirect_ref (TREE_VALUE (converted_args), 0)); arg = build_indirect_ref (TREE_VALUE (TREE_CHAIN (converted_args)), 0); + if (is_empty_class (TREE_TYPE (to))) + { + TREE_USED (arg) = 1; ! val = build (COMPOUND_EXPR, DECL_CONTEXT (fn), arg, to); ! /* Even though the assignment may not actually result in any ! code being generated, we do not want to warn about the ! assignment having no effect. That would be confusing to ! users who may be performing the assignment as part of a ! generic algorithm, for example. ! ! Ideally, the notions of having side-effects and of being ! useless would be orthogonal. */ ! TREE_SIDE_EFFECTS (val) = 1; ! } ! else ! val = build (MODIFY_EXPR, TREE_TYPE (to), to, arg); return val; } diff -Nrc3pad gcc-3.0/gcc/cp/class.c gcc-3.0.1/gcc/cp/class.c *** gcc-3.0/gcc/cp/class.c Thu Jun 14 05:16:29 2001 --- gcc-3.0.1/gcc/cp/class.c Tue Aug 7 06:06:42 2001 *************** mark_primary_virtual_base (binfo, base_b *** 1763,1769 **** tree type; { tree shared_binfo = binfo_for_vbase (BINFO_TYPE (base_binfo), type); - tree delta; if (BINFO_PRIMARY_P (shared_binfo)) { --- 1763,1768 ---- *************** mark_primary_virtual_base (binfo, base_b *** 1782,1793 **** if (base_binfo != shared_binfo) force_canonical_binfo (base_binfo, shared_binfo, type, NULL); - delta = size_diffop (BINFO_OFFSET (binfo), BINFO_OFFSET (base_binfo)); - if (!integer_zerop (delta)) - { - propagate_binfo_offsets (base_binfo, delta, type); - BINFO_OFFSET (base_binfo) = BINFO_OFFSET (binfo); - } return base_binfo; } --- 1781,1786 ---- *************** static tree dfs_unshared_virtual_bases ( *** 1820,1826 **** my_friendly_assert (unshared_base != binfo, 20010612); BINFO_LOST_PRIMARY_P (binfo) = BINFO_LOST_PRIMARY_P (unshared_base); if (!BINFO_LOST_PRIMARY_P (binfo)) ! BINFO_PRIMARY_BASE_OF (get_primary_binfo (binfo)) = binfo; } if (binfo != TYPE_BINFO (t)) --- 1813,1819 ---- my_friendly_assert (unshared_base != binfo, 20010612); BINFO_LOST_PRIMARY_P (binfo) = BINFO_LOST_PRIMARY_P (unshared_base); if (!BINFO_LOST_PRIMARY_P (binfo)) ! BINFO_PRIMARY_BASE_OF (get_primary_binfo (binfo)) = binfo; } if (binfo != TYPE_BINFO (t)) *************** static tree dfs_unshared_virtual_bases ( *** 1828,1833 **** --- 1821,1837 ---- base binfos. That information is bogus, make sure we don't try and use it. */ BINFO_VTABLE (binfo) = NULL_TREE; + + /* If this is a virtual primary base, make sure its offset matches + that which it is primary for. */ + if (BINFO_PRIMARY_P (binfo) && TREE_VIA_VIRTUAL (binfo) && + binfo_for_vbase (BINFO_TYPE (binfo), t) == binfo) + { + tree delta = size_diffop (BINFO_OFFSET (BINFO_PRIMARY_BASE_OF (binfo)), + BINFO_OFFSET (binfo)); + if (!integer_zerop (delta)) + propagate_binfo_offsets (binfo, delta, t); + } BINFO_UNSHARED_MARKED (binfo) = 0; return NULL; *************** mark_primary_bases (type) *** 1861,1869 **** BINFO_UNSHARED_MARKED (binfo) = 1; } ! /* There could remain unshared morally virtual bases which were not visited ! in the inheritance graph walk. These bases will have lost their ! virtual primary base (should they have one). We must now find them. */ dfs_walk (TYPE_BINFO (type), dfs_unshared_virtual_bases, NULL, type); } --- 1865,1878 ---- BINFO_UNSHARED_MARKED (binfo) = 1; } ! /* There could remain unshared morally virtual bases which were not ! visited in the inheritance graph walk. These bases will have lost ! their virtual primary base (should they have one). We must now ! find them. Also we must fix up the BINFO_OFFSETs of primary ! virtual bases. We could not do that as we went along, as they ! were originally copied from the bases we inherited from by ! unshare_base_binfos. That may have decided differently about ! where a virtual primary base went. */ dfs_walk (TYPE_BINFO (type), dfs_unshared_virtual_bases, NULL, type); } *************** dfs_find_final_overrider (binfo, data) *** 2582,2613 **** ffod->overriding_fn = method; ffod->overriding_base = TREE_VALUE (path); } ! /* If we found the same overrider we already have, then ! we just need to check that we're finding it in the same ! place. */ ! else if (ffod->overriding_fn == method) { ! if (ffod->overriding_base ! && (!tree_int_cst_equal (BINFO_OFFSET (TREE_VALUE (path)), BINFO_OFFSET (ffod->overriding_base)))) { ffod->candidates = build_tree_list (NULL_TREE, ffod->overriding_fn); ffod->overriding_fn = NULL_TREE; ffod->overriding_base = NULL_TREE; } } - /* If there was already an overrider, and it overrides this - function, then the old overrider is still the best - candidate. */ - else if (ffod->overriding_fn - && strictly_overrides (ffod->overriding_fn, - method)) - ; else { tree candidates; bool incomparable = false; --- 2591,2634 ---- ffod->overriding_fn = method; ffod->overriding_base = TREE_VALUE (path); } ! else if (ffod->overriding_fn) { ! /* We had a best overrider; let's see how this compares. */ ! ! if (ffod->overriding_fn == method ! && (tree_int_cst_equal (BINFO_OFFSET (TREE_VALUE (path)), BINFO_OFFSET (ffod->overriding_base)))) + /* We found the same overrider we already have, and in the + same place; it's still the best. */; + else if (strictly_overrides (ffod->overriding_fn, method)) + /* The old function overrides this function; it's still the + best. */; + else if (strictly_overrides (method, ffod->overriding_fn)) + { + /* The new function overrides the old; it's now the + best. */ + ffod->overriding_fn = method; + ffod->overriding_base = TREE_VALUE (path); + } + else { + /* Ambiguous. */ ffod->candidates = build_tree_list (NULL_TREE, ffod->overriding_fn); + if (method != ffod->overriding_fn) + ffod->candidates + = tree_cons (NULL_TREE, method, ffod->candidates); ffod->overriding_fn = NULL_TREE; ffod->overriding_base = NULL_TREE; } } else { + /* We had a list of ambiguous overrides; let's see how this + new one compares. */ + tree candidates; bool incomparable = false; *************** update_vtable_entry_for_fn (t, binfo, fn *** 2785,2794 **** (or one of its primary bases, which are at the same offset). */ if (virtual_base) ! /* The `this' pointer needs to be adjusted to the nearest virtual ! base. */ delta = size_diffop (BINFO_OFFSET (virtual_base), ! BINFO_OFFSET (binfo)); else { /* The `this' pointer needs to be adjusted from pointing to --- 2806,2815 ---- (or one of its primary bases, which are at the same offset). */ if (virtual_base) ! /* The `this' pointer needs to be adjusted from the declaration to ! the nearest virtual base. */ delta = size_diffop (BINFO_OFFSET (virtual_base), ! BINFO_OFFSET (first_defn)); else { /* The `this' pointer needs to be adjusted from pointing to *************** update_vtable_entry_for_fn (t, binfo, fn *** 2802,2808 **** /* We'll need a thunk. But if we have a (perhaps formerly) primary virtual base, we have a vcall slot for this function, so we can use it rather than create a non-virtual thunk. */ ! b = get_primary_binfo (first_defn); for (; b; b = get_primary_binfo (b)) { --- 2823,2829 ---- /* We'll need a thunk. But if we have a (perhaps formerly) primary virtual base, we have a vcall slot for this function, so we can use it rather than create a non-virtual thunk. */ ! b = get_primary_binfo (first_defn); for (; b; b = get_primary_binfo (b)) { *************** check_bases_and_members (t, empty_p) *** 4625,4631 **** || TYPE_HAS_ASSIGN_REF (t)); TYPE_HAS_REAL_ASSIGN_REF (t) |= TYPE_HAS_ASSIGN_REF (t); TYPE_HAS_COMPLEX_ASSIGN_REF (t) ! |= TYPE_HAS_ASSIGN_REF (t) || TYPE_USES_VIRTUAL_BASECLASSES (t); /* Synthesize any needed methods. Note that methods will be synthesized for anonymous unions; grok_x_components undoes that. */ --- 4646,4652 ---- || TYPE_HAS_ASSIGN_REF (t)); TYPE_HAS_REAL_ASSIGN_REF (t) |= TYPE_HAS_ASSIGN_REF (t); TYPE_HAS_COMPLEX_ASSIGN_REF (t) ! |= TYPE_HAS_ASSIGN_REF (t) || TYPE_CONTAINS_VPTR_P (t); /* Synthesize any needed methods. Note that methods will be synthesized for anonymous unions; grok_x_components undoes that. */ *************** layout_class_type (t, empty_p, vfuns_p, *** 5112,5119 **** TYPE_FIELDS (t)); /* CLASSTYPE_INLINE_FRIENDS is really TYPE_NONCOPIED_PARTS. Thus, ! we have to save this before we start modifying ! TYPE_NONCOPIED_PARTS. */ fixup_inline_methods (t); /* Layout the non-static data members. */ --- 5133,5139 ---- TYPE_FIELDS (t)); /* CLASSTYPE_INLINE_FRIENDS is really TYPE_NONCOPIED_PARTS. Thus, ! we have to save this before we zap TYPE_NONCOPIED_PARTS. */ fixup_inline_methods (t); /* Layout the non-static data members. */ *************** layout_class_type (t, empty_p, vfuns_p, *** 5211,5219 **** padding = build_decl (FIELD_DECL, NULL_TREE, char_type_node); place_field (rli, padding); - TYPE_NONCOPIED_PARTS (t) - = tree_cons (NULL_TREE, padding, TYPE_NONCOPIED_PARTS (t)); - TREE_STATIC (TYPE_NONCOPIED_PARTS (t)) = 1; } /* Let the back-end lay out the type. Note that at this point we --- 5231,5236 ---- *************** finish_struct_1 (t) *** 5338,5357 **** /* Make sure that we get our own copy of the vfield FIELD_DECL. */ vfield = TYPE_VFIELD (t); ! if (vfield != NULL_TREE ! && DECL_FIELD_CONTEXT (vfield) != t) { ! tree binfo = get_binfo (DECL_FIELD_CONTEXT (vfield), t, 0); vfield = copy_decl (vfield); - DECL_FIELD_CONTEXT (vfield) = t; - DECL_FIELD_OFFSET (vfield) - = size_binop (PLUS_EXPR, - BINFO_OFFSET (binfo), - DECL_FIELD_OFFSET (vfield)); TYPE_VFIELD (t) = vfield; } overridden_virtuals = modify_all_vtables (t, &vfuns, nreverse (overridden_virtuals)); --- 5355,5379 ---- /* Make sure that we get our own copy of the vfield FIELD_DECL. */ vfield = TYPE_VFIELD (t); ! if (vfield && CLASSTYPE_HAS_PRIMARY_BASE_P (t)) { ! tree primary = CLASSTYPE_PRIMARY_BINFO (t); + my_friendly_assert (same_type_p (DECL_FIELD_CONTEXT (vfield), + BINFO_TYPE (primary)), + 20010726); + /* The vtable better be at the start. */ + my_friendly_assert (integer_zerop (DECL_FIELD_OFFSET (vfield)), + 20010726); + my_friendly_assert (integer_zerop (BINFO_OFFSET (primary)), + 20010726); + vfield = copy_decl (vfield); DECL_FIELD_CONTEXT (vfield) = t; TYPE_VFIELD (t) = vfield; } + else + my_friendly_assert (!vfield || DECL_FIELD_CONTEXT (vfield) == t, 20010726); overridden_virtuals = modify_all_vtables (t, &vfuns, nreverse (overridden_virtuals)); *************** finish_struct_1 (t) *** 5467,5486 **** /* Build the VTT for T. */ build_vtt (t); ! if (TYPE_VFIELD (t)) ! { ! /* In addition to this one, all the other vfields should be listed. */ ! /* Before that can be done, we have to have FIELD_DECLs for them, and ! a place to find them. */ ! TYPE_NONCOPIED_PARTS (t) ! = tree_cons (default_conversion (TYPE_BINFO_VTABLE (t)), ! TYPE_VFIELD (t), TYPE_NONCOPIED_PARTS (t)); ! ! if (warn_nonvdtor && TYPE_HAS_DESTRUCTOR (t) ! && DECL_VINDEX (TREE_VEC_ELT (CLASSTYPE_METHOD_VEC (t), 1)) == NULL_TREE) ! cp_warning ("`%#T' has virtual functions but non-virtual destructor", ! t); ! } hack_incomplete_structures (t); --- 5489,5497 ---- /* Build the VTT for T. */ build_vtt (t); ! if (warn_nonvdtor && TYPE_POLYMORPHIC_P (t) && TYPE_HAS_DESTRUCTOR (t) ! && DECL_VINDEX (TREE_VEC_ELT (CLASSTYPE_METHOD_VEC (t), 1)) == NULL_TREE) ! cp_warning ("`%#T' has virtual functions but non-virtual destructor", t); hack_incomplete_structures (t); *************** get_original_base (base_binfo, binfo) *** 7256,7261 **** --- 7267,7297 ---- return NULL; } + /* When building a secondary VTT, BINFO_VTABLE is set to a TREE_LIST with + PURPOSE the RTTI_BINFO, VALUE the real vtable pointer for this binfo, + and CHAIN the vtable pointer for this binfo after construction is + complete. VALUE can also be another BINFO, in which case we recurse. */ + + static tree + binfo_ctor_vtable (binfo) + tree binfo; + { + tree vt; + + while (1) + { + vt = BINFO_VTABLE (binfo); + if (TREE_CODE (vt) == TREE_LIST) + vt = TREE_VALUE (vt); + if (TREE_CODE (vt) == TREE_VEC) + binfo = vt; + else + break; + } + + return vt; + } + /* Recursively build the VTT-initializer for BINFO (which is in the hierarchy dominated by T). INITS points to the end of the initializer list to date. INDEX is the VTT index where the next element will be *************** build_vtt_inits (binfo, t, inits, index) *** 7292,7300 **** } /* Add the address of the primary vtable for the complete object. */ ! init = BINFO_VTABLE (binfo); ! if (TREE_CODE (init) == TREE_LIST) ! init = TREE_VALUE (init); *inits = build_tree_list (NULL_TREE, init); inits = &TREE_CHAIN (*inits); if (top_level_p) --- 7328,7334 ---- } /* Add the address of the primary vtable for the complete object. */ ! init = binfo_ctor_vtable (binfo); *inits = build_tree_list (NULL_TREE, init); inits = &TREE_CHAIN (*inits); if (top_level_p) *************** dfs_build_secondary_vptr_vtt_inits (binf *** 7431,7463 **** while (BINFO_PRIMARY_BASE_OF (binfo)) binfo = BINFO_PRIMARY_BASE_OF (binfo); } ! init = BINFO_VTABLE (binfo); ! if (TREE_CODE (init) == TREE_LIST) ! init = TREE_VALUE (init); TREE_VALUE (l) = tree_cons (NULL_TREE, init, TREE_VALUE (l)); return NULL_TREE; } /* dfs_walk_real predicate for building vtables. DATA is a TREE_LIST, ! TREE_UNSIGNED indicates that a constructor vtable is being built. ! TREE_USED indicates whether marked or unmarked bases should be walked. ! TREE_PURPOSE is the TREE_TYPE that dominates the hierarchy. */ static tree dfs_ctor_vtable_bases_queue_p (binfo, data) tree binfo; void *data; { ! if (TREE_VIA_VIRTUAL (binfo) && !BINFO_PRIMARY_P (binfo)) ! { ! tree type = TREE_PURPOSE ((tree) data); - /* This is a non-primary virtual base, get the shared version. */ - binfo = binfo_for_vbase (BINFO_TYPE (binfo), type); - if (VTT_TOP_LEVEL_P ((tree) data) && BINFO_PRIMARY_P (binfo)) - return NULL_TREE; - } if (!BINFO_MARKED (binfo) == VTT_MARKED_BINFO_P ((tree) data)) return NULL_TREE; return binfo; --- 7465,7490 ---- while (BINFO_PRIMARY_BASE_OF (binfo)) binfo = BINFO_PRIMARY_BASE_OF (binfo); } ! init = binfo_ctor_vtable (binfo); TREE_VALUE (l) = tree_cons (NULL_TREE, init, TREE_VALUE (l)); return NULL_TREE; } /* dfs_walk_real predicate for building vtables. DATA is a TREE_LIST, ! VTT_MARKED_BINFO_P indicates whether marked or unmarked bases ! should be walked. TREE_PURPOSE is the TREE_TYPE that dominates the ! hierarchy. */ static tree dfs_ctor_vtable_bases_queue_p (binfo, data) tree binfo; void *data; { ! if (TREE_VIA_VIRTUAL (binfo)) ! /* Get the shared version. */ ! binfo = binfo_for_vbase (BINFO_TYPE (binfo), TREE_PURPOSE ((tree) data)); if (!BINFO_MARKED (binfo) == VTT_MARKED_BINFO_P ((tree) data)) return NULL_TREE; return binfo; *************** dfs_accumulate_vtbl_inits (binfo, orig_b *** 7625,7766 **** tree vtbl = NULL_TREE; int ctor_vtbl_p = !same_type_p (BINFO_TYPE (rtti_binfo), t); ! if (ctor_vtbl_p) { ! tree primary = binfo; ! tree orig_primary = orig_binfo; ! ! if (TREE_VIA_VIRTUAL (orig_binfo) && BINFO_PRIMARY_P (orig_binfo)) ! { ! /* In the hierarchy of BINFO_TYPE (RTTI_BINFO), this is a ! primary virtual base. If it is not the same primary in ! the hierarchy of T, we'll need to generate a ctor vtable ! for it, to place at its location in T. If it is the same ! primary, we still need a VTT entry for the vtable, but it ! should point to the ctor vtable for the base it is a ! primary for within the sub-hierarchy of RTTI_BINFO. ! There are three possible cases: ! 1) We are in the same place. ! 2) We are a primary base within a lost primary virtual base of ! RTTI_BINFO. ! 3) We are not primary to anything else in RTTI_BINFO. */ ! if (tree_int_cst_equal (BINFO_OFFSET (orig_binfo), ! size_diffop (BINFO_OFFSET (binfo), ! BINFO_OFFSET (rtti_binfo)))) ! { ! /* Case 1: We're in the same place relative to ! RTTI_BINFO as we were in the complete type, so we are ! primary either to RTTI_BINFO or one of its secondary ! bases. */ ! ! /* Walk down our until we either find the last ! primary base or rtti_binfo. */ ! tree b = BINFO_PRIMARY_BASE_OF (binfo); ! ! for (; b; b = BINFO_PRIMARY_BASE_OF (b)) ! { ! tree probe; ! ! /* See if B is still within the hierarchy starting ! at RTTI_BINFO. */ ! for (probe = b; probe; ! probe = BINFO_INHERITANCE_CHAIN (probe)) ! if (probe == rtti_binfo) ! break; ! ! if (!probe) ! break; ! ! primary = b; ! orig_primary = BINFO_PRIMARY_BASE_OF (orig_primary); ! } ! } ! else ! { ! /* Case 2 or 3: We're not in the same place. We might ! still be primary to something within a lost primary ! virtual base of RTTI_BINFO. */ ! tree b; ! tree last = binfo; ! tree orig_last = orig_binfo; ! ! /* First, look through the bases we are primary to for a ! virtual base. */ ! for (b = BINFO_PRIMARY_BASE_OF (binfo); ! b; ! b = BINFO_PRIMARY_BASE_OF (b)) ! { ! if (!TREE_VIA_VIRTUAL (b)) ! { ! /* See if B is still within the hierarchy starting ! at RTTI_BINFO. */ ! tree probe; ! ! for (probe = b; probe; ! probe = BINFO_INHERITANCE_CHAIN (probe)) ! if (probe == rtti_binfo) ! break; ! if (!probe) ! { ! b = NULL_TREE; ! break; ! } ! } ! ! last = b; ! if (orig_last) ! orig_last = BINFO_PRIMARY_BASE_OF (orig_last); ! if (TREE_VIA_VIRTUAL (b)) ! break; ! } ! /* If we run out of primary links, keep looking down our ! inheritance chain; we might be an indirect primary of ! a virtual base. */ ! if (b == NULL_TREE) ! for (b = last; b; b = BINFO_INHERITANCE_CHAIN (b)) ! if (TREE_VIA_VIRTUAL (b)) ! break; ! /* If we found a virtual base B and it is a base of ! RTTI_BINFO, we share our vtable with LAST, i.e. the ! derived-most base within B of which we are a primary. ! Otherwise, we get our own. */ ! if (b && binfo_for_vbase (BINFO_TYPE (b), ! BINFO_TYPE (rtti_binfo))) ! { ! my_friendly_assert (orig_last, 20010611); ! primary = last; ! orig_primary = orig_last; ! } ! } ! } ! ! vtbl = BINFO_VTABLE (primary); ! if (vtbl && TREE_CODE (vtbl) == TREE_LIST ! && TREE_PURPOSE (vtbl) == rtti_binfo) ! { ! vtbl = TREE_VALUE (vtbl); ! if (primary == binfo) ! /* We created this vtable because we met its primary base ! earlier in the inheritance graph walk of ! RTTI_BINFO. */ ! return inits; ! } ! else if (primary != binfo) { ! /* We're the primary of some binfo that we've not yet ! met in the inheritance graph walk of RTTI_BINFO. We ! must create that vtable now. */ ! inits = dfs_accumulate_vtbl_inits (primary, orig_primary, ! rtti_binfo, t, l); ! vtbl = BINFO_VTABLE (primary); ! vtbl = TREE_VALUE (vtbl); } ! else ! vtbl = NULL; } else if (!BINFO_NEW_VTABLE_MARKED (orig_binfo, BINFO_TYPE (rtti_binfo))) return inits; --- 7652,7706 ---- tree vtbl = NULL_TREE; int ctor_vtbl_p = !same_type_p (BINFO_TYPE (rtti_binfo), t); ! if (ctor_vtbl_p ! && TREE_VIA_VIRTUAL (orig_binfo) && BINFO_PRIMARY_P (orig_binfo)) { ! /* In the hierarchy of BINFO_TYPE (RTTI_BINFO), this is a ! primary virtual base. If it is not the same primary in ! the hierarchy of T, we'll need to generate a ctor vtable ! for it, to place at its location in T. If it is the same ! primary, we still need a VTT entry for the vtable, but it ! should point to the ctor vtable for the base it is a ! primary for within the sub-hierarchy of RTTI_BINFO. ! There are three possible cases: ! 1) We are in the same place. ! 2) We are a primary base within a lost primary virtual base of ! RTTI_BINFO. ! 3) We are primary to something not a base of RTTI_BINFO. */ ! tree b = BINFO_PRIMARY_BASE_OF (binfo); ! tree last = NULL_TREE; ! /* First, look through the bases we are primary to for RTTI_BINFO ! or a virtual base. */ ! for (; b; b = BINFO_PRIMARY_BASE_OF (b)) { ! last = b; ! if (TREE_VIA_VIRTUAL (b) || b == rtti_binfo) ! break; } ! /* If we run out of primary links, keep looking down our ! inheritance chain; we might be an indirect primary. */ ! if (b == NULL_TREE) ! for (b = last; b; b = BINFO_INHERITANCE_CHAIN (b)) ! if (TREE_VIA_VIRTUAL (b) || b == rtti_binfo) ! break; ! ! /* If we found RTTI_BINFO, this is case 1. If we found a virtual ! base B and it is a base of RTTI_BINFO, this is case 2. In ! either case, we share our vtable with LAST, i.e. the ! derived-most base within B of which we are a primary. */ ! if (b == rtti_binfo ! || (b && binfo_for_vbase (BINFO_TYPE (b), ! BINFO_TYPE (rtti_binfo)))) ! /* Just set our BINFO_VTABLE to point to LAST, as we may not have ! set LAST's BINFO_VTABLE yet. We'll extract the actual vptr in ! binfo_ctor_vtable after everything's been set up. */ ! vtbl = last; ! ! /* Otherwise, this is case 3 and we get our own. */ } else if (!BINFO_NEW_VTABLE_MARKED (orig_binfo, BINFO_TYPE (rtti_binfo))) return inits; *************** build_vbase_offset_vtbl_entries (binfo, *** 7986,7991 **** --- 7926,7932 ---- { tree vbase; tree t; + tree non_primary_binfo; /* Under the old ABI, pointers to virtual bases are stored in each object. */ *************** build_vbase_offset_vtbl_entries (binfo, *** 7998,8003 **** --- 7939,7968 ---- return; t = vid->derived; + + /* We might be a primary base class. Go up the inheritance hierarchy + until we find the most derived class of which we are a primary base: + it is the offset of that which we need to use. */ + non_primary_binfo = binfo; + while (BINFO_INHERITANCE_CHAIN (non_primary_binfo)) + { + tree b; + + /* If we have reached a virtual base, then it must be a primary + base (possibly multi-level) of vid->binfo, or we wouldn't + have called build_vcall_and_vbase_vtbl_entries for it. But it + might be a lost primary, so just skip down to vid->binfo. */ + if (TREE_VIA_VIRTUAL (non_primary_binfo)) + { + non_primary_binfo = vid->binfo; + break; + } + + b = BINFO_INHERITANCE_CHAIN (non_primary_binfo); + if (get_primary_binfo (b) != non_primary_binfo) + break; + non_primary_binfo = b; + } /* Go through the virtual bases, adding the offsets. */ for (vbase = TYPE_BINFO (BINFO_TYPE (binfo)); *************** build_vbase_offset_vtbl_entries (binfo, *** 8049,8055 **** The vbase offsets go in reverse inheritance-graph order, and we are walking in inheritance graph order so these end up in the right order. */ ! delta = size_diffop (BINFO_OFFSET (b), BINFO_OFFSET (binfo)); *vid->last_init = build_tree_list (NULL_TREE, fold (build1 (NOP_EXPR, --- 8014,8021 ---- The vbase offsets go in reverse inheritance-graph order, and we are walking in inheritance graph order so these end up in the right order. */ ! delta = size_diffop (BINFO_OFFSET (b), BINFO_OFFSET (non_primary_binfo)); ! *vid->last_init = build_tree_list (NULL_TREE, fold (build1 (NOP_EXPR, diff -Nrc3pad gcc-3.0/gcc/cp/cp-tree.h gcc-3.0.1/gcc/cp/cp-tree.h *** gcc-3.0/gcc/cp/cp-tree.h Tue Jun 12 11:03:29 2001 --- gcc-3.0.1/gcc/cp/cp-tree.h Tue Aug 7 06:06:43 2001 *************** extern int flag_new_for_scope; *** 2593,2599 **** #define TYPE_HAS_NONTRIVIAL_DESTRUCTOR(NODE) \ (TYPE_LANG_FLAG_4(NODE)) ! /* Nonzero for class type means that initialization of this type can use a bitwise copy. */ #define TYPE_HAS_TRIVIAL_INIT_REF(NODE) \ (TYPE_HAS_INIT_REF (NODE) && ! TYPE_HAS_COMPLEX_INIT_REF (NODE)) --- 2593,2599 ---- #define TYPE_HAS_NONTRIVIAL_DESTRUCTOR(NODE) \ (TYPE_LANG_FLAG_4(NODE)) ! /* Nonzero for class type means that copy initialization of this type can use a bitwise copy. */ #define TYPE_HAS_TRIVIAL_INIT_REF(NODE) \ (TYPE_HAS_INIT_REF (NODE) && ! TYPE_HAS_COMPLEX_INIT_REF (NODE)) *************** extern int get_arglist_len_in_bytes PAR *** 3715,3720 **** --- 3715,3721 ---- extern tree build_vfield_ref PARAMS ((tree, tree)); extern tree build_scoped_method_call PARAMS ((tree, tree, tree, tree)); + extern tree build_conditional_expr PARAMS ((tree, tree, tree)); extern tree build_addr_func PARAMS ((tree)); extern tree build_call PARAMS ((tree, tree)); extern tree build_method_call PARAMS ((tree, tree, tree, tree, int)); *************** extern tree get_primary_binfo *** 3776,3781 **** --- 3777,3783 ---- /* in cvt.c */ extern tree convert_to_reference PARAMS ((tree, tree, int, int, tree)); extern tree convert_from_reference PARAMS ((tree)); + extern tree convert_lvalue PARAMS ((tree, tree)); extern tree convert_pointer_to_real PARAMS ((tree, tree)); extern tree convert_pointer_to PARAMS ((tree, tree)); extern tree ocp_convert PARAMS ((tree, tree, int, int)); *************** extern tree build_x_unary_op PARAMS (( *** 4498,4504 **** extern tree unary_complex_lvalue PARAMS ((enum tree_code, tree)); extern int mark_addressable PARAMS ((tree)); extern tree build_x_conditional_expr PARAMS ((tree, tree, tree)); - extern tree build_conditional_expr PARAMS ((tree, tree, tree)); extern tree build_x_compound_expr PARAMS ((tree)); extern tree build_compound_expr PARAMS ((tree)); extern tree build_static_cast PARAMS ((tree, tree)); --- 4500,4505 ---- diff -Nrc3pad gcc-3.0/gcc/cp/cvt.c gcc-3.0.1/gcc/cp/cvt.c *** gcc-3.0/gcc/cp/cvt.c Mon Apr 30 17:09:50 2001 --- gcc-3.0.1/gcc/cp/cvt.c Thu Aug 16 21:31:27 2001 *************** convert_from_reference (val) *** 597,602 **** --- 597,616 ---- return build_indirect_ref (val, NULL_PTR); return val; } + + /* Implicitly convert the lvalue EXPR to another lvalue of type TOTYPE, + preserving cv-qualification. */ + + tree + convert_lvalue (totype, expr) + tree totype, expr; + { + totype = cp_build_qualified_type (totype, TYPE_QUALS (TREE_TYPE (expr))); + totype = build_reference_type (totype); + expr = convert_to_reference (totype, expr, CONV_IMPLICIT, LOOKUP_NORMAL, + NULL_TREE); + return convert_from_reference (expr); + } /* Call this when we know (for any reason) that expr is not, in fact, zero. This routine is like convert_pointer_to, but it pays *************** convert_to_void (expr, implicit) *** 922,929 **** tree new_op1 = convert_to_void (op1, implicit); if (new_op1 != op1) ! expr = build (COMPOUND_EXPR, TREE_TYPE (new_op1), ! TREE_OPERAND (expr, 0), new_op1); break; } --- 936,948 ---- tree new_op1 = convert_to_void (op1, implicit); if (new_op1 != op1) ! { ! tree t = build (COMPOUND_EXPR, TREE_TYPE (new_op1), ! TREE_OPERAND (expr, 0), new_op1); ! TREE_SIDE_EFFECTS (t) = TREE_SIDE_EFFECTS (expr); ! expr = t; ! } ! break; } diff -Nrc3pad gcc-3.0/gcc/cp/decl.c gcc-3.0.1/gcc/cp/decl.c *** gcc-3.0/gcc/cp/decl.c Fri Jun 8 06:50:10 2001 --- gcc-3.0.1/gcc/cp/decl.c Thu Jul 26 01:07:24 2001 *************** make_rtl_for_nonlocal_decl (decl, init, *** 7804,7810 **** /* Set the DECL_ASSEMBLER_NAME for the variable. */ if (asmspec) ! SET_DECL_ASSEMBLER_NAME (decl, get_identifier (asmspec)); /* We don't create any RTL for local variables. */ if (DECL_FUNCTION_SCOPE_P (decl) && !TREE_STATIC (decl)) --- 7804,7817 ---- /* Set the DECL_ASSEMBLER_NAME for the variable. */ if (asmspec) ! { ! SET_DECL_ASSEMBLER_NAME (decl, get_identifier (asmspec)); ! /* The `register' keyword, when used together with an ! asm-specification, indicates that the variable should be ! placed in a particular register. */ ! if (DECL_REGISTER (decl)) ! DECL_C_HARD_REGISTER (decl) = 1; ! } /* We don't create any RTL for local variables. */ if (DECL_FUNCTION_SCOPE_P (decl) && !TREE_STATIC (decl)) *************** grokdeclarator (declarator, declspecs, d *** 11143,11148 **** --- 11150,11175 ---- && TYPE_DOMAIN (type) == NULL_TREE) { type = build_cplus_array_type (TREE_TYPE (type), TYPE_DOMAIN (type)); + } + + /* Detect where we're using a typedef of function type to declare a + function. last_function_parms will not be set, so we must create + it now. */ + + if (type == typedef_type && TREE_CODE (type) == FUNCTION_TYPE) + { + tree decls = NULL_TREE; + tree args; + + for (args = TYPE_ARG_TYPES (type); args; args = TREE_CHAIN (args)) + { + tree decl = build_decl (PARM_DECL, NULL_TREE, TREE_VALUE (args)); + + TREE_CHAIN (decl) = decls; + decls = decl; + } + + last_function_parms = nreverse (decls); } /* If this is a type name (such as, in a cast or sizeof), diff -Nrc3pad gcc-3.0/gcc/cp/decl2.c gcc-3.0.1/gcc/cp/decl2.c *** gcc-3.0/gcc/cp/decl2.c Wed Jun 6 14:51:11 2001 --- gcc-3.0.1/gcc/cp/decl2.c Thu Aug 2 07:23:11 2001 *************** lang_f_options[] = *** 473,479 **** {"for-scope", &flag_new_for_scope, 2}, {"gnu-keywords", &flag_no_gnu_keywords, 0}, {"handle-exceptions", &flag_exceptions, 1}, - {"honor-std", &flag_honor_std, 1}, {"implement-inlines", &flag_implement_inlines, 1}, {"implicit-inline-templates", &flag_implicit_inline_templates, 1}, {"implicit-templates", &flag_implicit_templates, 1}, --- 473,478 ---- *************** static const char * const unsupported_op *** 497,502 **** --- 496,502 ---- "cond-mismatch", "enum-int-equiv", "guiding-decls", + "honor-std", "huge-objects", "labels-ok", "new-abi", diff -Nrc3pad gcc-3.0/gcc/cp/except.c gcc-3.0.1/gcc/cp/except.c *** gcc-3.0/gcc/cp/except.c Sun May 20 09:24:38 2001 --- gcc-3.0.1/gcc/cp/except.c Wed Jun 27 05:15:10 2001 *************** initialize_handler_parm (decl, exp) *** 348,354 **** adjusted by value from __cxa_begin_catch. Others are returned by reference. */ init_type = TREE_TYPE (decl); ! if (TREE_CODE (init_type) != POINTER_TYPE && TREE_CODE (init_type) != REFERENCE_TYPE) init_type = build_reference_type (init_type); --- 348,354 ---- adjusted by value from __cxa_begin_catch. Others are returned by reference. */ init_type = TREE_TYPE (decl); ! if (! TYPE_PTR_P (init_type) && TREE_CODE (init_type) != REFERENCE_TYPE) init_type = build_reference_type (init_type); *************** initialize_handler_parm (decl, exp) *** 357,364 **** /* Since pointers are passed by value, initialize a reference to pointer catch parm with the address of the temporary. */ ! if (TREE_CODE (init_type) == REFERENCE_TYPE ! && TREE_CODE (TREE_TYPE (init_type)) == POINTER_TYPE) exp = build_unary_op (ADDR_EXPR, exp, 1); exp = ocp_convert (init_type, exp, CONV_IMPLICIT|CONV_FORCE_TEMP, 0); --- 357,364 ---- /* Since pointers are passed by value, initialize a reference to pointer catch parm with the address of the temporary. */ ! if (TREE_CODE (init_type) == REFERENCE_TYPE ! && TYPE_PTR_P (TREE_TYPE (init_type))) exp = build_unary_op (ADDR_EXPR, exp, 1); exp = ocp_convert (init_type, exp, CONV_IMPLICIT|CONV_FORCE_TEMP, 0); diff -Nrc3pad gcc-3.0/gcc/cp/expr.c gcc-3.0.1/gcc/cp/expr.c *** gcc-3.0/gcc/cp/expr.c Sun May 13 00:10:21 2001 --- gcc-3.0.1/gcc/cp/expr.c Wed Jul 25 02:01:32 2001 *************** cplus_expand_expr (exp, target, tmode, m *** 105,113 **** target, tmode, modifier); case OFFSET_REF: ! return expand_expr (default_conversion (resolve_offset_ref (exp)), ! target, tmode, EXPAND_NORMAL); ! case THROW_EXPR: expand_expr (TREE_OPERAND (exp, 0), const0_rtx, VOIDmode, 0); return NULL; --- 105,114 ---- target, tmode, modifier); case OFFSET_REF: ! /* Offset refs should not make it through to here. */ ! my_friendly_abort (20010724); ! return const0_rtx; ! case THROW_EXPR: expand_expr (TREE_OPERAND (exp, 0), const0_rtx, VOIDmode, 0); return NULL; diff -Nrc3pad gcc-3.0/gcc/cp/lang-options.h gcc-3.0.1/gcc/cp/lang-options.h *** gcc-3.0/gcc/cp/lang-options.h Mon Jun 11 14:20:06 2001 --- gcc-3.0.1/gcc/cp/lang-options.h Thu Aug 2 07:23:12 2001 *************** DEFINE_LANG_NAME ("C++") *** 64,72 **** N_("Do not recognise GNU defined keywords") }, { "-fhandle-exceptions", "" }, { "-fno-handle-exceptions", "" }, - { "-fhonor-std", "" }, - { "-fno-honor-std", - N_("Do not treat the namespace `std' as a normal namespace") }, { "-fhuge-objects", N_("Enable support for huge objects") }, { "-fno-huge-objects", "" }, --- 64,69 ---- diff -Nrc3pad gcc-3.0/gcc/cp/method.c gcc-3.0.1/gcc/cp/method.c *** gcc-3.0/gcc/cp/method.c Fri Jun 8 04:09:02 2001 --- gcc-3.0.1/gcc/cp/method.c Wed Jul 25 02:32:46 2001 *************** do_build_copy_constructor (fndecl) *** 560,584 **** int cvquals = CP_TYPE_QUALS (TREE_TYPE (parm)); int i; ! /* Initialize all the base-classes. */ for (t = CLASSTYPE_VBASECLASSES (current_class_type); t; t = TREE_CHAIN (t)) ! base_init_list ! = tree_cons (BINFO_TYPE (TREE_VALUE (t)), parm, ! base_init_list); for (i = 0; i < n_bases; ++i) { t = TREE_VEC_ELT (binfos, i); if (TREE_VIA_VIRTUAL (t)) continue; ! base_init_list ! = tree_cons (BINFO_TYPE (t), parm, base_init_list); } for (; fields; fields = TREE_CHAIN (fields)) { ! tree init, t; tree field = fields; if (TREE_CODE (field) != FIELD_DECL) --- 560,590 ---- int cvquals = CP_TYPE_QUALS (TREE_TYPE (parm)); int i; ! /* Initialize all the base-classes with the parameter converted to ! their type so that we get their copy constructor and not another ! constructor that takes current_class_type. */ for (t = CLASSTYPE_VBASECLASSES (current_class_type); t; t = TREE_CHAIN (t)) ! { ! tree type = BINFO_TYPE (TREE_VALUE (t)); ! base_init_list = tree_cons (type, convert_lvalue (type, parm), ! base_init_list); ! } ! for (i = 0; i < n_bases; ++i) { t = TREE_VEC_ELT (binfos, i); if (TREE_VIA_VIRTUAL (t)) continue; ! t = BINFO_TYPE (t); ! base_init_list = tree_cons (t, convert_lvalue (t, parm), ! base_init_list); } for (; fields; fields = TREE_CHAIN (fields)) { ! tree init; tree field = fields; if (TREE_CODE (field) != FIELD_DECL) *************** do_build_assign_ref (fndecl) *** 648,659 **** for (i = 0; i < n_bases; ++i) { tree basetype = BINFO_TYPE (TREE_VEC_ELT (binfos, i)); ! tree p = build_qualified_type (basetype, cvquals); ! ! p = convert_to_reference ! (build_reference_type (p), parm, ! CONV_IMPLICIT, LOOKUP_COMPLAIN, NULL_TREE); ! p = convert_from_reference (p); p = build_member_call (basetype, ansi_assopname (NOP_EXPR), build_tree_list (NULL_TREE, p)); finish_expr_stmt (p); --- 654,660 ---- for (i = 0; i < n_bases; ++i) { tree basetype = BINFO_TYPE (TREE_VEC_ELT (binfos, i)); ! tree p = convert_lvalue (basetype, parm); p = build_member_call (basetype, ansi_assopname (NOP_EXPR), build_tree_list (NULL_TREE, p)); finish_expr_stmt (p); diff -Nrc3pad gcc-3.0/gcc/cp/parse.c gcc-3.0.1/gcc/cp/parse.c *** gcc-3.0/gcc/cp/parse.c Sun Jun 17 12:51:06 2001 --- gcc-3.0.1/gcc/cp/parse.c Sun Aug 19 17:53:32 2001 *************** *** 1,6 **** /* A Bison parser, made from parse.y ! by GNU Bison version 1.28 */ #define YYBISON 1 /* Identify Bison output. */ --- 1,7 ---- /* A Bison parser, made from parse.y ! by GNU Bison version 1.27 ! */ #define YYBISON 1 /* Identify Bison output. */ *************** static const short yycheck[] = { 4, *** 4132,4138 **** }; /* -*-C-*- Note some compilers choke on comments on `#line' lines. */ #line 3 "/usr/lib/bison.simple" ! /* This file comes from bison-1.28. */ /* Skeleton output parser for bison, Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc. --- 4133,4139 ---- }; /* -*-C-*- Note some compilers choke on comments on `#line' lines. */ #line 3 "/usr/lib/bison.simple" ! /* This file comes from bison-1.27. */ /* Skeleton output parser for bison, Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc. *************** __yy_memcpy (char *to, char *from, unsig *** 4345,4351 **** #endif #endif ! #line 217 "/usr/lib/bison.simple" /* The user can define YYPARSE_PARAM as the name of an argument to be passed into yyparse. The argument should have type void *. --- 4346,4352 ---- #endif #endif ! #line 216 "/usr/lib/bison.simple" /* The user can define YYPARSE_PARAM as the name of an argument to be passed into yyparse. The argument should have type void *. *************** case 917: *** 8577,8583 **** break;} } /* the action file gets copied in in place of this dollarsign */ ! #line 543 "/usr/lib/bison.simple" yyvsp -= yylen; yyssp -= yylen; --- 8578,8584 ---- break;} } /* the action file gets copied in in place of this dollarsign */ ! #line 542 "/usr/lib/bison.simple" yyvsp -= yylen; yyssp -= yylen; diff -Nrc3pad gcc-3.0/gcc/cp/pt.c gcc-3.0.1/gcc/cp/pt.c *** gcc-3.0/gcc/cp/pt.c Wed Jun 6 09:12:42 2001 --- gcc-3.0.1/gcc/cp/pt.c Tue Jul 10 23:13:26 2001 *************** tsubst_decl (t, args, type) *** 5959,5970 **** ctx = tsubst_aggr_type (DECL_CONTEXT (t), args, /*complain=*/1, in_decl, /*entering_scope=*/1); else { /* Subsequent calls to pushdecl will fill this in. */ ctx = NULL_TREE; ! if (!DECL_NAMESPACE_SCOPE_P (t)) ! local_p = 1; } /* Check to see if we already have this specialization. */ --- 5959,5971 ---- ctx = tsubst_aggr_type (DECL_CONTEXT (t), args, /*complain=*/1, in_decl, /*entering_scope=*/1); + else if (DECL_NAMESPACE_SCOPE_P (t)) + ctx = DECL_CONTEXT (t); else { /* Subsequent calls to pushdecl will fill this in. */ ctx = NULL_TREE; ! local_p = 1; } /* Check to see if we already have this specialization. */ *************** unify (tparms, targs, parm, arg, strict) *** 8536,8542 **** return 1; if (!(strict & UNIFY_ALLOW_OUTER_LEVEL) ! && TYPE_P (arg) && !CP_TYPE_CONST_P (arg)) strict &= ~UNIFY_ALLOW_MORE_CV_QUAL; strict &= ~UNIFY_ALLOW_OUTER_LEVEL; strict &= ~UNIFY_ALLOW_DERIVED; --- 8537,8543 ---- return 1; if (!(strict & UNIFY_ALLOW_OUTER_LEVEL) ! && TYPE_P (parm) && !CP_TYPE_CONST_P (parm)) strict &= ~UNIFY_ALLOW_MORE_CV_QUAL; strict &= ~UNIFY_ALLOW_OUTER_LEVEL; strict &= ~UNIFY_ALLOW_DERIVED; *************** unify (tparms, targs, parm, arg, strict) *** 8744,8749 **** --- 8745,8762 ---- level of pointers. */ strict |= (strict_in & UNIFY_ALLOW_DERIVED); + if (TREE_CODE (TREE_TYPE (parm)) == OFFSET_TYPE + && TREE_CODE (TREE_TYPE (arg)) == OFFSET_TYPE) + { + /* Avoid getting confused about cv-quals; don't recurse here. + Pointers to members should really be just OFFSET_TYPE, not + this two-level nonsense... */ + + parm = TREE_TYPE (parm); + arg = TREE_TYPE (arg); + goto offset; + } + return unify (tparms, targs, TREE_TYPE (parm), TREE_TYPE (arg), strict); } *************** unify (tparms, targs, parm, arg, strict) *** 8896,8901 **** --- 8909,8915 ---- DEDUCE_EXACT, 0, -1); case OFFSET_TYPE: + offset: if (TREE_CODE (arg) != OFFSET_TYPE) return 1; if (unify (tparms, targs, TYPE_OFFSET_BASETYPE (parm), diff -Nrc3pad gcc-3.0/gcc/cp/semantics.c gcc-3.0.1/gcc/cp/semantics.c *** gcc-3.0/gcc/cp/semantics.c Wed Jun 6 14:51:11 2001 --- gcc-3.0.1/gcc/cp/semantics.c Wed Jul 11 09:57:25 2001 *************** finish_asm_stmt (cv_qualifier, string, o *** 922,929 **** } if (!processing_template_decl) ! for (t = input_operands; t; t = TREE_CHAIN (t)) ! TREE_VALUE (t) = decay_conversion (TREE_VALUE (t)); r = build_stmt (ASM_STMT, cv_qualifier, string, output_operands, input_operands, --- 922,971 ---- } if (!processing_template_decl) ! { ! int i; ! int ninputs; ! int noutputs; ! ! for (t = input_operands; t; t = TREE_CHAIN (t)) ! TREE_VALUE (t) = decay_conversion (TREE_VALUE (t)); ! ! ninputs = list_length (input_operands); ! noutputs = list_length (output_operands); ! ! for (i = 0, t = output_operands; t; t = TREE_CHAIN (t), ++i) ! { ! bool allows_mem; ! bool allows_reg; ! bool is_inout; ! const char *constraint; ! tree operand; ! ! constraint = TREE_STRING_POINTER (TREE_PURPOSE (t)); ! operand = TREE_VALUE (output_operands); ! ! if (!parse_output_constraint (&constraint, ! i, ninputs, noutputs, ! &allows_mem, ! &allows_reg, ! &is_inout)) ! { ! /* By marking the type as erroneous, we will not try to ! process this operand again in expand_asm_operands. */ ! TREE_TYPE (operand) = error_mark_node; ! continue; ! } ! ! /* If the operand is a DECL that is going to end up in ! memory, assume it is addressable. This is a bit more ! conservative than it would ideally be; the exact test is ! buried deep in expand_asm_operands and depends on the ! DECL_RTL for the OPERAND -- which we don't have at this ! point. */ ! if (!allows_reg && DECL_P (operand)) ! mark_addressable (operand); ! } ! } r = build_stmt (ASM_STMT, cv_qualifier, string, output_operands, input_operands, diff -Nrc3pad gcc-3.0/gcc/cp/spew.c gcc-3.0.1/gcc/cp/spew.c *** gcc-3.0/gcc/cp/spew.c Wed May 16 02:41:20 2001 --- gcc-3.0.1/gcc/cp/spew.c Thu Jul 26 01:16:56 2001 *************** yylex () *** 835,842 **** got_object = NULL_TREE; yychar = yychr; ! yylval = nth_token (0)->yylval; ! lineno = nth_token (0)->lineno; #ifdef SPEW_DEBUG if (spew_debug) --- 835,847 ---- got_object = NULL_TREE; yychar = yychr; ! { ! struct token *tok = nth_token (0); ! ! yylval = tok->yylval; ! if (tok->lineno) ! lineno = tok->lineno; ! } #ifdef SPEW_DEBUG if (spew_debug) diff -Nrc3pad gcc-3.0/gcc/cp/typeck.c gcc-3.0.1/gcc/cp/typeck.c *** gcc-3.0/gcc/cp/typeck.c Sun Jun 10 14:46:08 2001 --- gcc-3.0.1/gcc/cp/typeck.c Wed Jul 25 02:37:26 2001 *************** decay_conversion (exp) *** 1733,1738 **** --- 1733,1744 ---- if (type == error_mark_node) return error_mark_node; + if (type_unknown_p (exp)) + { + incomplete_type_error (exp, TREE_TYPE (exp)); + return error_mark_node; + } + /* Constants can be used directly unless they're not loadable. */ if (TREE_CODE (exp) == CONST_DECL) exp = DECL_INITIAL (exp); *************** build_binary_op (code, orig_op0, orig_op *** 3380,3396 **** int common = 0; /* Apply default conversions. */ if (code == TRUTH_AND_EXPR || code == TRUTH_ANDIF_EXPR || code == TRUTH_OR_EXPR || code == TRUTH_ORIF_EXPR || code == TRUTH_XOR_EXPR) { ! op0 = decay_conversion (orig_op0); ! op1 = decay_conversion (orig_op1); } else { ! op0 = default_conversion (orig_op0); ! op1 = default_conversion (orig_op1); } /* Strip NON_LVALUE_EXPRs, etc., since we aren't using as an lvalue. */ --- 3386,3409 ---- int common = 0; /* Apply default conversions. */ + op0 = orig_op0; + op1 = orig_op1; + if (code == TRUTH_AND_EXPR || code == TRUTH_ANDIF_EXPR || code == TRUTH_OR_EXPR || code == TRUTH_ORIF_EXPR || code == TRUTH_XOR_EXPR) { ! if (!really_overloaded_fn (op0)) ! op0 = decay_conversion (op0); ! if (!really_overloaded_fn (op1)) ! op1 = decay_conversion (op1); } else { ! if (!really_overloaded_fn (op0)) ! op0 = default_conversion (op0); ! if (!really_overloaded_fn (op1)) ! op1 = default_conversion (op1); } /* Strip NON_LVALUE_EXPRs, etc., since we aren't using as an lvalue. */ *************** condition_conversion (expr) *** 4346,4351 **** --- 4359,4366 ---- tree t; if (processing_template_decl) return expr; + if (TREE_CODE (expr) == OFFSET_REF) + expr = resolve_offset_ref (expr); t = perform_implicit_conversion (boolean_type_node, expr); t = fold (build1 (CLEANUP_POINT_EXPR, boolean_type_node, t)); return t; *************** build_static_cast (type, expr) *** 5104,5110 **** build_tree_list (NULL_TREE, expr), TYPE_BINFO (type), LOOKUP_NORMAL))); - expr = decay_conversion (expr); intype = TREE_TYPE (expr); /* FIXME handle casting to array type. */ --- 5119,5124 ---- diff -Nrc3pad gcc-3.0/libstdc++-v3/ChangeLog gcc-3.0.1/libstdc++-v3/ChangeLog *** gcc-3.0/libstdc++-v3/ChangeLog Sun Jun 17 12:41:19 2001 --- gcc-3.0.1/libstdc++-v3/ChangeLog Sun Aug 19 14:08:35 2001 *************** *** 1,3 **** --- 1,409 ---- + 2001-08-19 Release Manager + + * GCC 3.0.1 Released. + + 2001-08-19 Release Manager + + * GCC 3.0.1 Released. + + 2001-08-17 Loren J. Rittle + + bootstrap/3963 + * include/Makefile.am: Use relative file path in rule to allow + colon in $(objdir). + * include/Makefile.in: Rebuilt. + + 2001-08-16 Franz Sirl + + * configure.target: Set LIMITSH for powerpc-*-*. + * config/cpu/powerpc/bits/limits.h: New file. + + 2001-08-16 Marc Espie + + * libmath/mathconf.h: Include on OpenBSD (branch + fix only, for robustness). + + 2001-08-15 Andreas Schwab + + * configure.target (cpu_include_dir): Set to `config/cpu/m68k' for + m68k and m680[246]0. + * config/cpu/m68k/bits/atomicity.h: New file. + + * include/bits/std_limits.h [__glibcpp_long_double_bits == 96]: + Define appropriate long double limits for m68k extended floating + point. + (__glibcpp_f32_digits10): Corrected, off by one. + (__glibcpp_f80_digits10): Likewise. + (__glibcpp_f128_digits10): Likewise. + * config/os/gnu-linux/bits/os_defines.h + (__glibcpp_long_double_bits) [__mc68000__]: Define to 96. + + 2001-08-15 Gabriel Dos Reis + + * include/bits/std_limits.h (numeric_limits::max): Fix + typo. + + 2001-08-14 Ulrich Weigand + + * configure.target (cpu_include_dir): Set to `config/cpu/s390' + for s390 and s390x. + + * config/cpu/s390/bits/atomicity.h: New. + + 2001-08-14 Gabriel Dos Reis + + * include/bits/std_limits.h: Fix thinko. + + 2001-08-14 Benjamin Kosnik + + * src/Makefile.am (libstdc___la_LDFLAGS): Increase revision number. + * src/Makefile.in: Regenerate. + + 2001-08-14 Peter Schmid + + * libstdc++-v3/libmath/stubs.c: Fix PR/3988, replace + _GBLICPP_HAVE_LOGL with HAVE_LOGL + + 2001-08-13 Mark Mitchell + + * configure.in (LIMITS_INC_SRCDIR): New variable. + * configure.target (LIMITSH): New variable. + * porting.texi: Discuss numeric limits. + * config/cpu/generic/bits/limits.h: New file. + * config/cpu/i386/bits/limits.h: New file. + * include/Makefile.am: Install bits/limits.h. + * include/bits/c++config: Include bits/limits.h. + + 2001-08-10 Gabriel Dos Reis + Mark Mitchell + + * include/bits/std_limits.h: New file. + * include/Makefile.am (bits_headers): Add std_limits.h + (all-local): std_limits.h is no longer built. + (${target_builddir}/std_limits.h): Remove. + * include/Makefile.in: Regenerate. + * src/limits.cc: New file. + * src/Makefile.am (sources): Add limits.cc in replacement of + limitsMEMBERS.cc. + * src/Makefile.in: Regenerate. + + 2001-08-09 David Edelsohn + + * config/os/aix/bits/os_defines.h: Define std_limits.h macros. + * config/os/generic/bits/os_defines.h: Likewise. + * config/os/gnu-linux/bits/os_defines.h: Likewise. + * config/os/hpux/bits/os_defines.h: Likewise. + * config/os/irix/irix6.5/bits/os_defines.h: Likewise. + * config/os/solaris/solaris2.7/bits/os_defines.h: Likewise. + + 2001-08-10 Gunter Winkler + + * include/bits/std_complex.h (complex::operator*=, + complex::operator/=): Fix thinko. + + 2001-07-31 Loren J. Rittle + + * src/gen-num-limits.cc: Use __LONG_LONG_MAX__. + + 2001-07-26 Gabriel Dos Reis + + * acinclude.m4: CHECK_MATH_DECL_AND_LINKAGE for hypot, hypotf, + hypotl, atan2f, atan2l. Remove from REPLACE_MATHFUNCS list. + * aclocal.m4: Regenerate. + * config.h.in: Likewise. + * configure: Likewise. + * libmath/Makefile.am (EXTRA_LONG_DOUBLE_yes): Remove hypotl.c + (EXTRA_DIST): Remove hypot.c hypotf.c. + * libmath/Makefile.am: Regenerate. + * libmath/hypotf.c: Remove. + * libmath/hypot.c: Likewise. + * libmath/hypotl.c: Likewise. + * libmath/stubs.c: The macros seen here are HAVE_xxx, not + _GLIBCPP_HAVE_xxx. Add long double versions. + + 2001-07-26 Stephen M. Webb + + * acinclude.m4 (GLIBCPP_ENABLE_CHEADERS): Use glibcpp_srcdir when + setting C_INCLUDE_DIR. + * aclocal.m4: Regenerate. + * configure: Regenerate. + + 2001-07-26 Stephen M. Webb + Loren J. Rittle + Phil Edwards + + * include/Makefile.am: New file encapsulating header generation rules. + * Makefile.am (SUBDIRS): Prepend 'include' directory. + * acinclude.m4: Moved/removed rules for building various headers. + * configure.in (AC_OUTPUT): Add include/Makefile. + * mkc++config: Removed. + + * testsuite_flags.in: Changed build-includes to match new scheme. + * mknumeric_limits: Likewise. + * libio/Makefile.am: Changed INCLUDES to maatch new header scheme. + * libmath/Makefile.am: Likewise. + * libsupc++/Makefile.am: Likewise. + * src/Makefile.am: Likewise; removed rules to build headers. + * libmath/mathconf.h: Changed #include'd header names to match. + * libmath/stubs.c: Likewise. + * src/gen-num-limits.cc: Likewise. + + * configure: Regenerated. + * config.h.in: Regenerated. + * aclocal.m4: Regenerated. + * Makefile.in: Regenerated. + * include/Makefile.in: Regenerated. + * libio/Makefile.in: Regenerated. + * libmath/Makefile.in: Regenerated. + * libsupc++/Makefile.in: Regenerated. + * src/Makefile.in: Regenerated. + * testsuite/Makefile.in: Regenerated. + + 2001-07-26 Daniel Jacobowitz + + * configure.in: Remove NATIVE, NULL_TARGET. + Set CANADIAN only for Canadian crosses. Set xcompiling + for both Canadian crosses and host-x-host crosses. + * configure: Regenerated. + + 2001-07-25 H.J. Lu + + * configure.target (cpu_include_dir): Set to `config/cpu/mips' + for mips. + + * config/cpu/mips/bits/atomicity.h: New. + + 2001-07-25 David Edelsohn + + * include/bits/limits_generic.h (int): Set digits and digits10 + appropriately for word size. + (unsigned int,long,unsigned long): Likewise. + + 2001-07-19 Phil Edwards + Mark Mitchell + + Merge from cp-parser-branch. + * include/bits/basic_string.h: Qualify symbols with 'template'. + * include/bits/basic_string.tcc: Likewise. + * include/bits/fstream.tcc: Likewise. + * include/bits/istream.tcc: Likewise. + * include/bits/sstream.tcc: Likewise. + * include/bits/std_istream.h: Likewise. + * include/bits/stl_iterator.h: Likewise. + * include/bits/streambuf.tcc: Likewise. + * src/gen-num-limits.cc: Add 'template<>' to specializations. + * src/locale.cc: Likewise. + + 2001-07-19 Gabriel Dos Reis + Bert De Knuydt + + * src/gen-num-limits.cc (set_signals_handler): New function. + Factor out signals setting. Set signal handler for SIGILL. + + 2001-07-18 Phil Edwards + + * docs/html/27_io/howto.html: Fix typo. + * docs/html/faq/index.html: Minor updates for 3.0 all around. + * docs/html/faq/index.txt: Regenerated. + + 2001-07-13 Phil Edwards + + * include/bits/std_sstream.h (basic_stringbuf::basic_stringbuf(string): + Initialize _M_string with pointer-and-size constructor, not just + pointer. Fix some comments. + * testsuite/21_strings/ctor_copy_dtor.cc (test03): New test. + * testsuite/27_io/stringbuf.cc (test02): Remove unused variable. + (test03): Add embedded-NUL tests. + + * mkcheck.in: When printing totals, match the order of the tests. + * include/bits/stringfwd.h: Use same declaration keywords. + * include/bits/std_iosfwd.h: Cosmetic spacing. + + 2001-07-11 Felix Natter + + * docs/html/17_intro/porting-howto.xml: Initial checkin of + master copy. + * docs/html/17_intro/porting-howto.html: check in v0.9.3 + + 2001-07-11 Phil Edwards + + * docs/doxygen/run_doxygen: Don't keep output from previous run. + * docs/doxygen/user.cfg.in: Tweaks. + * include/bits/c++config: Documentation comments for Doxygen. + * include/bits/char_traits.h: Likewise. + * include/bits/limits_generic.h: Likewise. + * include/bits/std_stdexcept.h: Likewise. + * include/bits/stl_pair.h: Likewise. + * libsupc++/exception: Likewise. + * libsupc++/new: Likewise. + * libsupc++/typeinfo: Likewise. + * libmath/Makefile.am: Update and correct copyright. + + 2001-07-10 Gabriel Dos Reis + + * acinclude.m4: Don't AC_REPLACE_MATHFUNCS expf and atan2f. + * aclocal.m4: Regenerate. + * configure: Same. + + 2001-07-09 Phil Edwards + + * docs/html/configopts.html: Fix thinko. + * docs/html/27_io/howto.html: Fix thinko and HTML markup. + * include/bits/stl_iterator.h: Fix typo. + + 2001-07-09 Phil Edwards + + * docs/html/explanations.html: New file. + * docs/html/configopts.html: Link to it to provide more notes + on cstdio. Minor markup and spacing fixes. + * docs/html/27_io/howto.html: Talk about sync_with_stdio. + + 2001-07-09 Kriang Lerdsuwanakij + + * include/bits/valarray_meta.h (_Expr::operator+): Use qualified id + for _Expr template template argument. + (_Expr::operator-): Likewise. + (_Expr::operator~): Likewise. + (_Expr::operator!): Likewise. + (_DEFINE_EXPR_UNARY_OPERATOR): Likewise. + + 2001-07-06 Gabriel Dos Reis + + * libmath/Makefile.am (EXTRA_DIST): Remove atan2f.c and expf.c + * libmath/Makefile.in: Regenerate. + * libmath/expf.c: Remove. + * libmath/atan2f.c: Likewise. + + 2001-07-02 Loren J. Rittle + + * acinclude.m4 (GLIBCPP_ENABLE_THREADS): Protect variable from shell + expansion (thanks to Alexandre Oliva). + * aclocal.m4: Regenerate. + * configure: Regenerate. + + 2001-07-02 Loren J. Rittle + + libstdc++/3284 + * acinclude.m4 (GLIBCPP_ENABLE_THREADS): Portability enhancement. + * aclocal.m4: Regenerate. + * configure: Regenerate. + + 2001-07-02 Loren J. Rittle + + libstdc++/3243 + * acinclude.m4 (GLIBCPP_ENABLE_THREADS): Add relative path to + staged/installed area to support -I-. Document. + * aclocal.m4: Regenerate. + * configure: Regenerate. + + 2001-06-27 Phil Edwards + + * include/backward/algo.h: Add "GPL plus runtime exception" comment + block, this time for real. + * include/backward/algobase.h: Likewise. + * include/backward/alloc.h: Likewise. + * include/backward/bvector.h: Likewise. + * include/backward/defalloc.h: Likewise. + * include/backward/deque.h: Likewise. + * include/backward/function.h: Likewise. + * include/backward/hash_map.h: Likewise. + * include/backward/hash_set.h: Likewise. + * include/backward/hashtable.h: Likewise. + * include/backward/heap.h: Likewise. + * include/backward/iterator.h: Likewise. + * include/backward/list.h: Likewise. + * include/backward/map.h: Likewise. + * include/backward/multimap.h: Likewise. + * include/backward/multiset.h: Likewise. + * include/backward/pair.h: Likewise. + * include/backward/rope.h: Likewise. + * include/backward/set.h: Likewise. + * include/backward/slist.h: Likewise. + * include/backward/stack.h: Likewise. + * include/backward/strstream: Likewise. + * include/backward/tempbuf.h: Likewise. + * include/backward/tree.h: Likewise. + * include/backward/vector.h: Likewise. + * include/bits/pthread_allocimpl.h: Likewise. + * include/bits/std_algorithm.h: Likewise. + * include/bits/std_bitset.h: Likewise. + * include/bits/std_deque.h: Likewise. + * include/bits/std_functional.h: Likewise. + * include/bits/std_iterator.h: Likewise. + * include/bits/std_list.h: Likewise. + * include/bits/std_map.h: Likewise. + * include/bits/std_memory.h: Likewise. + * include/bits/std_numeric.h: Likewise. + * include/bits/std_queue.h: Likewise. + * include/bits/std_set.h: Likewise. + * include/bits/std_stack.h: Likewise. + * include/bits/std_utility.h: Likewise. + * include/bits/std_vector.h: Likewise. + * include/bits/stl_algo.h: Likewise. + * include/bits/stl_algobase.h: Likewise. + * include/bits/stl_alloc.h: Likewise. + * include/bits/stl_bvector.h: Likewise. + * include/bits/stl_construct.h: Likewise. + * include/bits/stl_deque.h: Likewise. + * include/bits/stl_function.h: Likewise. + * include/bits/stl_heap.h: Likewise. + * include/bits/stl_iterator.h: Likewise. + * include/bits/stl_iterator_base_funcs.h: Likewise. + * include/bits/stl_iterator_base_types.h: Likewise. + * include/bits/stl_list.h: Likewise. + * include/bits/stl_map.h: Likewise. + * include/bits/stl_multimap.h: Likewise. + * include/bits/stl_multiset.h: Likewise. + * include/bits/stl_numeric.h: Likewise. + * include/bits/stl_pair.h: Likewise. + * include/bits/stl_pthread_alloc.h: Likewise. + * include/bits/stl_queue.h: Likewise. + * include/bits/stl_raw_storage_iter.h: Likewise. + * include/bits/stl_relops.h: Likewise. + * include/bits/stl_set.h: Likewise. + * include/bits/stl_stack.h: Likewise. + * include/bits/stl_tempbuf.h: Likewise. + * include/bits/stl_threads.h: Likewise. + * include/bits/stl_tree.h: Likewise. + * include/bits/stl_uninitialized.h: Likewise. + * include/bits/stl_vector.h: Likewise. + * include/bits/type_traits.h: Likewise. + * include/ext/hash_map: Likewise. + * include/ext/hash_set: Likewise. + * include/ext/rope: Likewise. + * include/ext/ropeimpl.h: Likewise. + * include/ext/slist: Likewise. + * include/ext/stl_hash_fun.h: Likewise. + * include/ext/stl_hashtable.h: Likewise. + * include/ext/stl_rope.h: Likewise. + * src/bitset.cc: Likewise. + * src/strstream.cc: Likewise. + + 2001-06-26 Felix Natter + + * docs/html/17_intro/porting-howto.html: Fixed some errors. + + 2001-06-25 Phil Edwards + Kurt Garloff + + PR libstdc++/3377 + * src/cmath.cc: New [version of an old] file; instantiate + __cmath_power to start with. + * src/Makefile.am (sources): Add cmath.cc (and alphabetize). + * Makefile.in: Regenerate. + * libio/Makefile.in: Regenerate. + * libmath/Makefile.in: Regenerate. + * libsupc++/Makefile.in: Regenerate. + * src/Makefile.in: Regenerate. + * testsuite/Makefile.in: Regenerate. + + 2001-06-24 Gabriel Dos Reis + David Edelsohn + + * libmath/stubs.c: New file. + * libmath/Makefile.am (libmath_la_SOURCES): Add stubs.c. + * libmath/Makefile.in: Regenerate. + 20010617 Release Manager * GCC 3.0 Released. diff -Nrc3pad gcc-3.0/libstdc++-v3/Makefile.am gcc-3.0.1/libstdc++-v3/Makefile.am *** gcc-3.0/libstdc++-v3/Makefile.am Mon May 14 12:48:35 2001 --- gcc-3.0.1/libstdc++-v3/Makefile.am Thu Jul 26 00:51:00 2001 *************** *** 24,30 **** AUTOMAKE_OPTIONS = 1.3 cygnus MAINT_CHARSET = latin1 ! SUBDIRS = libio libmath libsupc++ src testsuite mkinstalldirs = $(SHELL) $(toplevel_srcdir)/mkinstalldirs --- 24,30 ---- AUTOMAKE_OPTIONS = 1.3 cygnus MAINT_CHARSET = latin1 ! SUBDIRS = include libio libmath libsupc++ src testsuite mkinstalldirs = $(SHELL) $(toplevel_srcdir)/mkinstalldirs *************** doxygen-maint: *** 58,64 **** ${srcdir}/docs/doxygen/run_doxygen --mode=maint $${srcdir} $${outdir}) .PHONY: doxygen doxygen-maint - # Multilib support. MAKEOVERRIDES= --- 58,63 ---- diff -Nrc3pad gcc-3.0/libstdc++-v3/Makefile.in gcc-3.0.1/libstdc++-v3/Makefile.in *** gcc-3.0/libstdc++-v3/Makefile.in Fri Jun 8 23:56:45 2001 --- gcc-3.0.1/libstdc++-v3/Makefile.in Mon Aug 13 15:21:28 2001 *************** target_alias = @target_alias@ *** 65,74 **** target_triplet = @target@ AR = @AR@ AS = @AS@ CC = @CC@ CPP = @CPP@ CSHADOW_FLAGS = @CSHADOW_FLAGS@ ! CSTD_INCLUDES = @CSTD_INCLUDES@ CXX = @CXX@ CXXCPP = @CXXCPP@ C_INCLUDE_DIR = @C_INCLUDE_DIR@ --- 65,78 ---- target_triplet = @target@ AR = @AR@ AS = @AS@ + ATOMICITY_INC_SRCDIR = @ATOMICITY_INC_SRCDIR@ + BASIC_FILE_H = @BASIC_FILE_H@ CC = @CC@ + CCODECVT_C = @CCODECVT_C@ + CLOCALE_H = @CLOCALE_H@ CPP = @CPP@ CSHADOW_FLAGS = @CSHADOW_FLAGS@ ! CSTDIO_H = @CSTDIO_H@ CXX = @CXX@ CXXCPP = @CXXCPP@ C_INCLUDE_DIR = @C_INCLUDE_DIR@ *************** EXEEXT = @EXEEXT@ *** 78,84 **** EXTRA_CXX_FLAGS = @EXTRA_CXX_FLAGS@ GCJ = @GCJ@ GCJFLAGS = @GCJFLAGS@ ! GLIBCPP_INCLUDE_DIR = @GLIBCPP_INCLUDE_DIR@ LIBIO_INCLUDES = @LIBIO_INCLUDES@ LIBMATHOBJS = @LIBMATHOBJS@ LIBMATH_INCLUDES = @LIBMATH_INCLUDES@ --- 82,89 ---- EXTRA_CXX_FLAGS = @EXTRA_CXX_FLAGS@ GCJ = @GCJ@ GCJFLAGS = @GCJFLAGS@ ! GLIBCPP_INCLUDES = @GLIBCPP_INCLUDES@ ! GLIBCPP_IS_CROSS_COMPILING = @GLIBCPP_IS_CROSS_COMPILING@ LIBIO_INCLUDES = @LIBIO_INCLUDES@ LIBMATHOBJS = @LIBMATHOBJS@ LIBMATH_INCLUDES = @LIBMATH_INCLUDES@ *************** LIBSTRINGOBJS = @LIBSTRINGOBJS@ *** 86,91 **** --- 91,97 ---- LIBSUPCXX_INCLUDES = @LIBSUPCXX_INCLUDES@ LIBSUPCXX_PICFLAGS = @LIBSUPCXX_PICFLAGS@ LIBTOOL = @LIBTOOL@ + LIMITS_INC_SRCDIR = @LIMITS_INC_SRCDIR@ LN_S = @LN_S@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ *************** OBJDUMP = @OBJDUMP@ *** 93,98 **** --- 99,105 ---- OBJEXT = @OBJEXT@ OPTIMIZE_CXXFLAGS = @OPTIMIZE_CXXFLAGS@ OPT_LDFLAGS = @OPT_LDFLAGS@ + OS_INC_SRCDIR = @OS_INC_SRCDIR@ PACKAGE = @PACKAGE@ RANLIB = @RANLIB@ SECTION_FLAGS = @SECTION_FLAGS@ *************** glibcpp_basedir = @glibcpp_basedir@ *** 110,115 **** --- 117,123 ---- glibcpp_builddir = @glibcpp_builddir@ glibcpp_prefixdir = @glibcpp_prefixdir@ glibcpp_srcdir = @glibcpp_srcdir@ + glibcpp_thread_h = @glibcpp_thread_h@ glibcpp_toolexecdir = @glibcpp_toolexecdir@ glibcpp_toolexeclibdir = @glibcpp_toolexeclibdir@ gxx_include_dir = @gxx_include_dir@ *************** toplevel_srcdir = @toplevel_srcdir@ *** 120,126 **** AUTOMAKE_OPTIONS = 1.3 cygnus MAINT_CHARSET = latin1 ! SUBDIRS = libio libmath libsupc++ src testsuite mkinstalldirs = $(SHELL) $(toplevel_srcdir)/mkinstalldirs --- 128,134 ---- AUTOMAKE_OPTIONS = 1.3 cygnus MAINT_CHARSET = latin1 ! SUBDIRS = include libio libmath libsupc++ src testsuite mkinstalldirs = $(SHELL) $(toplevel_srcdir)/mkinstalldirs diff -Nrc3pad gcc-3.0/libstdc++-v3/acinclude.m4 gcc-3.0.1/libstdc++-v3/acinclude.m4 *** gcc-3.0/libstdc++-v3/acinclude.m4 Thu Jun 14 01:47:35 2001 --- gcc-3.0.1/libstdc++-v3/acinclude.m4 Thu Jul 26 11:24:58 2001 *************** AC_DEFUN(GLIBCPP_CHECK_MATH_SUPPORT, [ *** 641,646 **** --- 641,647 ---- GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_3(sincos) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_1(fpclass) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_1(qfpclass) + GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_2(hypot) dnl Check to see if basic C math functions have float versions. GLIBCPP_CHECK_MATH_DECLS_AND_LINKAGES_1(float trig, *************** AC_DEFUN(GLIBCPP_CHECK_MATH_SUPPORT, [ *** 653,661 **** --- 654,664 ---- ceilf floorf) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_1(isnanf) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_1(isinff) + GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_2(atan2f) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_1(fabsf) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_2(fmodf) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_2(frexpf) + GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_2(hypotf) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_2(ldexpf) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_1(logf) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_1(log10f) *************** AC_DEFUN(GLIBCPP_CHECK_MATH_SUPPORT, [ *** 682,687 **** --- 685,691 ---- GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_1(fabsl) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_2(fmodl) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_2(frexpl) + GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_2(hypotl) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_2(ldexpl) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_1(logl) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_1(log10l) *************** dnl Check to see if there is native supp *** 726,748 **** dnl dnl Don't compile bits in math/* if native support exits. dnl ! dnl Define USE_COMPLEX_LONG_DOUBLE etc if "atan2l/copysignl" is found. dnl dnl GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT AC_DEFUN(GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT, [ dnl Check for complex versions of math functions of platform. AC_CHECK_LIB(m, main) ! AC_REPLACE_MATHFUNCS(nan hypot hypotf atan2f expf copysignf) dnl Compile the long double complex functions only if the function dnl provides the non-complex long double functions that are needed. ! dnl Currently this includes copysignl and atan2l, which should be dnl cached from the GLIBCPP_CHECK_MATH_SUPPORT macro, above. USE_COMPLEX_LONG_DOUBLE=no ! if test x$ac_cv_func_atan2l = x"yes" \ ! && test x$ac_cv_func_copysignl = x"yes"; then USE_COMPLEX_LONG_DOUBLE=yes ! AC_REPLACE_MATHFUNCS(hypotl signbitl) fi AC_SUBST(USE_COMPLEX_LONG_DOUBLE) --- 730,751 ---- dnl dnl Don't compile bits in math/* if native support exits. dnl ! dnl Define USE_COMPLEX_LONG_DOUBLE etc if "copysignl" is found. dnl dnl GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT AC_DEFUN(GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT, [ dnl Check for complex versions of math functions of platform. AC_CHECK_LIB(m, main) ! AC_REPLACE_MATHFUNCS(nan copysignf) dnl Compile the long double complex functions only if the function dnl provides the non-complex long double functions that are needed. ! dnl Currently this includes copysignl, which should be dnl cached from the GLIBCPP_CHECK_MATH_SUPPORT macro, above. USE_COMPLEX_LONG_DOUBLE=no ! if test x$ac_cv_func_copysignl = x"yes"; then USE_COMPLEX_LONG_DOUBLE=yes ! AC_REPLACE_MATHFUNCS(signbitl) fi AC_SUBST(USE_COMPLEX_LONG_DOUBLE) *************** AC_DEFUN(GLIBCPP_CHECK_TARGET, [ *** 758,764 **** . [$]{glibcpp_basedir}/configure.target AC_MSG_RESULT(CPU config directory is $cpu_include_dir) AC_MSG_RESULT(OS config directory is $os_include_dir) - AC_LINK_FILES($os_include_dir/bits/os_defines.h, include/bits/os_defines.h) ]) --- 761,766 ---- *************** AC_DEFUN(GLIBCPP_ENABLE_CLOCALE, [ *** 1006,1012 **** ;; esac ! AC_LINK_FILES($CLOCALE_H, include/bits/c++locale.h) AC_LINK_FILES($CLOCALE_CC, src/c++locale.cc) ]) --- 1008,1014 ---- ;; esac ! AC_SUBST(CLOCALE_H) AC_LINK_FILES($CLOCALE_CC, src/c++locale.cc) ]) *************** AC_DEFUN(GLIBCPP_ENABLE_CSTDIO, [ *** 1106,1118 **** exit 1 ;; esac ! AC_LINK_FILES($CSTDIO_H, include/bits/c++io.h) ! AC_LINK_FILES($BASIC_FILE_H, include/bits/basic_file_model.h) AC_LINK_FILES($BASIC_FILE_CC, src/basic_file.cc) # 2000-08-04 bkoz hack CCODECVT_C=config/c_io_libio_codecvt.c ! AC_LINK_FILES($CCODECVT_C, libio/c_codecvt.c) # 2000-08-04 bkoz hack AM_CONDITIONAL(GLIBCPP_BUILD_LIBIO, --- 1108,1120 ---- exit 1 ;; esac ! AC_SUBST(CSTDIO_H) ! AC_SUBST(BASIC_FILE_H) AC_LINK_FILES($BASIC_FILE_CC, src/basic_file.cc) # 2000-08-04 bkoz hack CCODECVT_C=config/c_io_libio_codecvt.c ! AC_SUBST(CCODECVT_C) # 2000-08-04 bkoz hack AM_CONDITIONAL(GLIBCPP_BUILD_LIBIO, *************** dnl macro names into user-provided C++ c *** 1137,1166 **** dnl and process to with an output command. The reason for a two- dnl stage process here is to correctly handle $srcdir!=$objdir without dnl having to write complex code (the sed commands to clean the macro ! dnl namespace are complex and fragile enough as it is). dnl AC_DEFUN(GLIBCPP_ENABLE_THREADS, [ AC_MSG_CHECKING([for thread model used by GCC]) target_thread_file=`$CC -v 2>&1 | sed -n 's/^Thread model: //p'` AC_MSG_RESULT([$target_thread_file]) - AC_LINK_FILES($toprel/gcc/gthr.h, include/bits/gthr.h-in) - AC_LINK_FILES($toprel/gcc/gthr-single.h, - include/bits/gthr-single.h-in) - AC_LINK_FILES($toprel/gcc/gthr-$target_thread_file.h, - include/bits/gthr-default.h-in) if test $target_thread_file != single; then AC_DEFINE(HAVE_GTHR_DEFAULT) AC_DEFINE(_GLIBCPP_SUPPORTS_WEAK, __GXX_WEAK__) fi ! AC_OUTPUT_COMMANDS([d=include/bits ! rm -f $d/gthr.h $d/gthr-single.h $d/gthr-default.h ! sed '/^#/s/\([A-Z_][A-Z_]*\)/_GLIBCPP_\1/g' <$d/gthr.h-in >$d/gthr.h ! sed 's/\(UNUSED\)/_GLIBCPP_\1/g' <$d/gthr-single.h-in \ ! | sed 's/\(GCC[A-Z_]*_H\)/_GLIBCPP_\1/g' >$d/gthr-single.h ! sed 's/\(UNUSED\)/_GLIBCPP_\1/g' <$d/gthr-default.h-in \ ! | sed 's/\(GCC[A-Z_]*_H\)/_GLIBCPP_\1/g' \ ! | sed 's/\([A-Z_]*WEAK\)/_GLIBCPP_\1/g' >$d/gthr-default.h]) ]) --- 1139,1159 ---- dnl and process to with an output command. The reason for a two- dnl stage process here is to correctly handle $srcdir!=$objdir without dnl having to write complex code (the sed commands to clean the macro ! dnl namespace are complex and fragile enough as it is). We must also ! dnl add a relative path so that -I- is supported properly. dnl AC_DEFUN(GLIBCPP_ENABLE_THREADS, [ AC_MSG_CHECKING([for thread model used by GCC]) target_thread_file=`$CC -v 2>&1 | sed -n 's/^Thread model: //p'` AC_MSG_RESULT([$target_thread_file]) if test $target_thread_file != single; then AC_DEFINE(HAVE_GTHR_DEFAULT) AC_DEFINE(_GLIBCPP_SUPPORTS_WEAK, __GXX_WEAK__) fi ! ! glibcpp_thread_h=gthr-$target_thread_file.h ! AC_SUBST(glibcpp_thread_h) ]) *************** changequote([, ]) *** 1441,1456 **** case "$enable_cheaders" in c_shadow) CSHADOW_FLAGS="-fno-builtin" ! C_INCLUDE_DIR='${top_srcdir}/include/c_shadow' AC_DEFINE(_GLIBCPP_USE_SHADOW_HEADERS) ;; c_std) CSHADOW_FLAGS="" ! C_INCLUDE_DIR='${top_srcdir}/include/c_std' ;; c) CSHADOW_FLAGS="" ! C_INCLUDE_DIR='${top_srcdir}/include/c' ;; esac --- 1434,1449 ---- case "$enable_cheaders" in c_shadow) CSHADOW_FLAGS="-fno-builtin" ! C_INCLUDE_DIR='${glibcpp_srcdir}/include/c_shadow' AC_DEFINE(_GLIBCPP_USE_SHADOW_HEADERS) ;; c_std) CSHADOW_FLAGS="" ! C_INCLUDE_DIR='${glibcpp_srcdir}/include/c_std' ;; c) CSHADOW_FLAGS="" ! C_INCLUDE_DIR='${glibcpp_srcdir}/include/c' ;; esac *************** dnl Option parsed, now other scripts can *** 1489,1513 **** dnl dnl Set up *_INCLUDES and *_INCLUDE_DIR variables for all sundry Makefile.am's. dnl - dnl GLIBCPP_INCLUDE_DIR - dnl C_INCLUDE_DIR dnl TOPLEVEL_INCLUDES dnl LIBMATH_INCLUDES dnl LIBSUPCXX_INCLUDES dnl LIBIO_INCLUDES dnl CSHADOW_INCLUDES dnl ! dnl GLIBCPP_EXPORT_INCLUDE AC_DEFUN(GLIBCPP_EXPORT_INCLUDES, [ ! # Root level of the include sources. ! GLIBCPP_INCLUDE_DIR='$(top_srcdir)/include' - # Can either use include/c or include/c_std to grab "C" headers. This - # variable is set to the include directory currently in use. - # set with C_INCLUDE_DIR in GLIBCPP_ENABLE_CHEADERS - # Passed down for canadian crosses. ! if test x"$CANADIAN" = xyes; then TOPLEVEL_INCLUDES='-I$(includedir)' fi --- 1482,1500 ---- dnl dnl Set up *_INCLUDES and *_INCLUDE_DIR variables for all sundry Makefile.am's. dnl dnl TOPLEVEL_INCLUDES dnl LIBMATH_INCLUDES dnl LIBSUPCXX_INCLUDES dnl LIBIO_INCLUDES dnl CSHADOW_INCLUDES dnl ! dnl GLIBCPP_EXPORT_INCLUDES AC_DEFUN(GLIBCPP_EXPORT_INCLUDES, [ ! # Root level of the build directory include sources. ! GLIBCPP_INCLUDES="-I${glibcpp_builddir}/include/${target_alias} -I${glibcpp_builddir}/include" # Passed down for canadian crosses. ! if test x"$CANADIAN" = xyes; then TOPLEVEL_INCLUDES='-I$(includedir)' fi *************** AC_DEFUN(GLIBCPP_EXPORT_INCLUDES, [ *** 1515,1540 **** LIBSUPCXX_INCLUDES='-I$(top_srcdir)/libsupc++' ! #if GLIBCPP_NEED_LIBIO ! LIBIO_INCLUDES='-I$(top_builddir)/libio -I$(top_srcdir)/libio' ! #else ! #LIBIO_INCLUDES='-I$(top_srcdir)/libio' ! #endif ! ! #if GLIBCPP_USE_CSHADOW ! # CSHADOW_INCLUDES='-I$(GLIBCPP_INCLUDE_DIR)/std -I$(C_INCLUDE_DIR) \ ! # -I$(top_blddir)/cshadow' ! #else ! CSTD_INCLUDES='-I$(GLIBCPP_INCLUDE_DIR)/std -I$(C_INCLUDE_DIR)' ! #endif # Now, export this to all the little Makefiles.... ! AC_SUBST(GLIBCPP_INCLUDE_DIR) AC_SUBST(TOPLEVEL_INCLUDES) AC_SUBST(LIBMATH_INCLUDES) AC_SUBST(LIBSUPCXX_INCLUDES) - AC_SUBST(LIBIO_INCLUDES) - AC_SUBST(CSTD_INCLUDES) ]) --- 1502,1517 ---- LIBSUPCXX_INCLUDES='-I$(top_srcdir)/libsupc++' ! if test x"$need_libio" = xyes; then ! LIBIO_INCLUDES='-I$(top_builddir)/libio -I$(top_srcdir)/libio' ! AC_SUBST(LIBIO_INCLUDES) ! fi # Now, export this to all the little Makefiles.... ! AC_SUBST(GLIBCPP_INCLUDES) AC_SUBST(TOPLEVEL_INCLUDES) AC_SUBST(LIBMATH_INCLUDES) AC_SUBST(LIBSUPCXX_INCLUDES) ]) diff -Nrc3pad gcc-3.0/libstdc++-v3/aclocal.m4 gcc-3.0.1/libstdc++-v3/aclocal.m4 *** gcc-3.0/libstdc++-v3/aclocal.m4 Thu Jun 14 01:47:36 2001 --- gcc-3.0.1/libstdc++-v3/aclocal.m4 Thu Jul 26 11:24:58 2001 *************** AC_DEFUN(GLIBCPP_CHECK_MATH_SUPPORT, [ *** 653,658 **** --- 653,659 ---- GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_3(sincos) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_1(fpclass) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_1(qfpclass) + GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_2(hypot) dnl Check to see if basic C math functions have float versions. GLIBCPP_CHECK_MATH_DECLS_AND_LINKAGES_1(float trig, *************** AC_DEFUN(GLIBCPP_CHECK_MATH_SUPPORT, [ *** 665,673 **** --- 666,676 ---- ceilf floorf) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_1(isnanf) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_1(isinff) + GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_2(atan2f) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_1(fabsf) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_2(fmodf) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_2(frexpf) + GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_2(hypotf) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_2(ldexpf) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_1(logf) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_1(log10f) *************** AC_DEFUN(GLIBCPP_CHECK_MATH_SUPPORT, [ *** 694,699 **** --- 697,703 ---- GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_1(fabsl) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_2(fmodl) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_2(frexpl) + GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_2(hypotl) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_2(ldexpl) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_1(logl) GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_1(log10l) *************** dnl Check to see if there is native supp *** 738,760 **** dnl dnl Don't compile bits in math/* if native support exits. dnl ! dnl Define USE_COMPLEX_LONG_DOUBLE etc if "atan2l/copysignl" is found. dnl dnl GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT AC_DEFUN(GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT, [ dnl Check for complex versions of math functions of platform. AC_CHECK_LIB(m, main) ! AC_REPLACE_MATHFUNCS(nan hypot hypotf atan2f expf copysignf) dnl Compile the long double complex functions only if the function dnl provides the non-complex long double functions that are needed. ! dnl Currently this includes copysignl and atan2l, which should be dnl cached from the GLIBCPP_CHECK_MATH_SUPPORT macro, above. USE_COMPLEX_LONG_DOUBLE=no ! if test x$ac_cv_func_atan2l = x"yes" \ ! && test x$ac_cv_func_copysignl = x"yes"; then USE_COMPLEX_LONG_DOUBLE=yes ! AC_REPLACE_MATHFUNCS(hypotl signbitl) fi AC_SUBST(USE_COMPLEX_LONG_DOUBLE) --- 742,763 ---- dnl dnl Don't compile bits in math/* if native support exits. dnl ! dnl Define USE_COMPLEX_LONG_DOUBLE etc if "copysignl" is found. dnl dnl GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT AC_DEFUN(GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT, [ dnl Check for complex versions of math functions of platform. AC_CHECK_LIB(m, main) ! AC_REPLACE_MATHFUNCS(nan copysignf) dnl Compile the long double complex functions only if the function dnl provides the non-complex long double functions that are needed. ! dnl Currently this includes copysignl, which should be dnl cached from the GLIBCPP_CHECK_MATH_SUPPORT macro, above. USE_COMPLEX_LONG_DOUBLE=no ! if test x$ac_cv_func_copysignl = x"yes"; then USE_COMPLEX_LONG_DOUBLE=yes ! AC_REPLACE_MATHFUNCS(signbitl) fi AC_SUBST(USE_COMPLEX_LONG_DOUBLE) *************** AC_DEFUN(GLIBCPP_CHECK_TARGET, [ *** 770,776 **** . [$]{glibcpp_basedir}/configure.target AC_MSG_RESULT(CPU config directory is $cpu_include_dir) AC_MSG_RESULT(OS config directory is $os_include_dir) - AC_LINK_FILES($os_include_dir/bits/os_defines.h, include/bits/os_defines.h) ]) --- 773,778 ---- *************** AC_DEFUN(GLIBCPP_ENABLE_CLOCALE, [ *** 1018,1024 **** ;; esac ! AC_LINK_FILES($CLOCALE_H, include/bits/c++locale.h) AC_LINK_FILES($CLOCALE_CC, src/c++locale.cc) ]) --- 1020,1026 ---- ;; esac ! AC_SUBST(CLOCALE_H) AC_LINK_FILES($CLOCALE_CC, src/c++locale.cc) ]) *************** AC_DEFUN(GLIBCPP_ENABLE_CSTDIO, [ *** 1118,1130 **** exit 1 ;; esac ! AC_LINK_FILES($CSTDIO_H, include/bits/c++io.h) ! AC_LINK_FILES($BASIC_FILE_H, include/bits/basic_file_model.h) AC_LINK_FILES($BASIC_FILE_CC, src/basic_file.cc) # 2000-08-04 bkoz hack CCODECVT_C=config/c_io_libio_codecvt.c ! AC_LINK_FILES($CCODECVT_C, libio/c_codecvt.c) # 2000-08-04 bkoz hack AM_CONDITIONAL(GLIBCPP_BUILD_LIBIO, --- 1120,1132 ---- exit 1 ;; esac ! AC_SUBST(CSTDIO_H) ! AC_SUBST(BASIC_FILE_H) AC_LINK_FILES($BASIC_FILE_CC, src/basic_file.cc) # 2000-08-04 bkoz hack CCODECVT_C=config/c_io_libio_codecvt.c ! AC_SUBST(CCODECVT_C) # 2000-08-04 bkoz hack AM_CONDITIONAL(GLIBCPP_BUILD_LIBIO, *************** dnl macro names into user-provided C++ c *** 1149,1178 **** dnl and process to with an output command. The reason for a two- dnl stage process here is to correctly handle $srcdir!=$objdir without dnl having to write complex code (the sed commands to clean the macro ! dnl namespace are complex and fragile enough as it is). dnl AC_DEFUN(GLIBCPP_ENABLE_THREADS, [ AC_MSG_CHECKING([for thread model used by GCC]) target_thread_file=`$CC -v 2>&1 | sed -n 's/^Thread model: //p'` AC_MSG_RESULT([$target_thread_file]) - AC_LINK_FILES($toprel/gcc/gthr.h, include/bits/gthr.h-in) - AC_LINK_FILES($toprel/gcc/gthr-single.h, - include/bits/gthr-single.h-in) - AC_LINK_FILES($toprel/gcc/gthr-$target_thread_file.h, - include/bits/gthr-default.h-in) if test $target_thread_file != single; then AC_DEFINE(HAVE_GTHR_DEFAULT) AC_DEFINE(_GLIBCPP_SUPPORTS_WEAK, __GXX_WEAK__) fi ! AC_OUTPUT_COMMANDS([d=include/bits ! rm -f $d/gthr.h $d/gthr-single.h $d/gthr-default.h ! sed '/^#/s/\([A-Z_][A-Z_]*\)/_GLIBCPP_\1/g' <$d/gthr.h-in >$d/gthr.h ! sed 's/\(UNUSED\)/_GLIBCPP_\1/g' <$d/gthr-single.h-in \ ! | sed 's/\(GCC[A-Z_]*_H\)/_GLIBCPP_\1/g' >$d/gthr-single.h ! sed 's/\(UNUSED\)/_GLIBCPP_\1/g' <$d/gthr-default.h-in \ ! | sed 's/\(GCC[A-Z_]*_H\)/_GLIBCPP_\1/g' \ ! | sed 's/\([A-Z_]*WEAK\)/_GLIBCPP_\1/g' >$d/gthr-default.h]) ]) --- 1151,1171 ---- dnl and process to with an output command. The reason for a two- dnl stage process here is to correctly handle $srcdir!=$objdir without dnl having to write complex code (the sed commands to clean the macro ! dnl namespace are complex and fragile enough as it is). We must also ! dnl add a relative path so that -I- is supported properly. dnl AC_DEFUN(GLIBCPP_ENABLE_THREADS, [ AC_MSG_CHECKING([for thread model used by GCC]) target_thread_file=`$CC -v 2>&1 | sed -n 's/^Thread model: //p'` AC_MSG_RESULT([$target_thread_file]) if test $target_thread_file != single; then AC_DEFINE(HAVE_GTHR_DEFAULT) AC_DEFINE(_GLIBCPP_SUPPORTS_WEAK, __GXX_WEAK__) fi ! ! glibcpp_thread_h=gthr-$target_thread_file.h ! AC_SUBST(glibcpp_thread_h) ]) *************** changequote([, ]) *** 1453,1468 **** case "$enable_cheaders" in c_shadow) CSHADOW_FLAGS="-fno-builtin" ! C_INCLUDE_DIR='${top_srcdir}/include/c_shadow' AC_DEFINE(_GLIBCPP_USE_SHADOW_HEADERS) ;; c_std) CSHADOW_FLAGS="" ! C_INCLUDE_DIR='${top_srcdir}/include/c_std' ;; c) CSHADOW_FLAGS="" ! C_INCLUDE_DIR='${top_srcdir}/include/c' ;; esac --- 1446,1461 ---- case "$enable_cheaders" in c_shadow) CSHADOW_FLAGS="-fno-builtin" ! C_INCLUDE_DIR='${glibcpp_srcdir}/include/c_shadow' AC_DEFINE(_GLIBCPP_USE_SHADOW_HEADERS) ;; c_std) CSHADOW_FLAGS="" ! C_INCLUDE_DIR='${glibcpp_srcdir}/include/c_std' ;; c) CSHADOW_FLAGS="" ! C_INCLUDE_DIR='${glibcpp_srcdir}/include/c' ;; esac *************** dnl Option parsed, now other scripts can *** 1501,1525 **** dnl dnl Set up *_INCLUDES and *_INCLUDE_DIR variables for all sundry Makefile.am's. dnl - dnl GLIBCPP_INCLUDE_DIR - dnl C_INCLUDE_DIR dnl TOPLEVEL_INCLUDES dnl LIBMATH_INCLUDES dnl LIBSUPCXX_INCLUDES dnl LIBIO_INCLUDES dnl CSHADOW_INCLUDES dnl ! dnl GLIBCPP_EXPORT_INCLUDE AC_DEFUN(GLIBCPP_EXPORT_INCLUDES, [ ! # Root level of the include sources. ! GLIBCPP_INCLUDE_DIR='$(top_srcdir)/include' - # Can either use include/c or include/c_std to grab "C" headers. This - # variable is set to the include directory currently in use. - # set with C_INCLUDE_DIR in GLIBCPP_ENABLE_CHEADERS - # Passed down for canadian crosses. ! if test x"$CANADIAN" = xyes; then TOPLEVEL_INCLUDES='-I$(includedir)' fi --- 1494,1512 ---- dnl dnl Set up *_INCLUDES and *_INCLUDE_DIR variables for all sundry Makefile.am's. dnl dnl TOPLEVEL_INCLUDES dnl LIBMATH_INCLUDES dnl LIBSUPCXX_INCLUDES dnl LIBIO_INCLUDES dnl CSHADOW_INCLUDES dnl ! dnl GLIBCPP_EXPORT_INCLUDES AC_DEFUN(GLIBCPP_EXPORT_INCLUDES, [ ! # Root level of the build directory include sources. ! GLIBCPP_INCLUDES="-I${glibcpp_builddir}/include/${target_alias} -I${glibcpp_builddir}/include" # Passed down for canadian crosses. ! if test x"$CANADIAN" = xyes; then TOPLEVEL_INCLUDES='-I$(includedir)' fi *************** AC_DEFUN(GLIBCPP_EXPORT_INCLUDES, [ *** 1527,1552 **** LIBSUPCXX_INCLUDES='-I$(top_srcdir)/libsupc++' ! #if GLIBCPP_NEED_LIBIO ! LIBIO_INCLUDES='-I$(top_builddir)/libio -I$(top_srcdir)/libio' ! #else ! #LIBIO_INCLUDES='-I$(top_srcdir)/libio' ! #endif ! ! #if GLIBCPP_USE_CSHADOW ! # CSHADOW_INCLUDES='-I$(GLIBCPP_INCLUDE_DIR)/std -I$(C_INCLUDE_DIR) \ ! # -I$(top_blddir)/cshadow' ! #else ! CSTD_INCLUDES='-I$(GLIBCPP_INCLUDE_DIR)/std -I$(C_INCLUDE_DIR)' ! #endif # Now, export this to all the little Makefiles.... ! AC_SUBST(GLIBCPP_INCLUDE_DIR) AC_SUBST(TOPLEVEL_INCLUDES) AC_SUBST(LIBMATH_INCLUDES) AC_SUBST(LIBSUPCXX_INCLUDES) - AC_SUBST(LIBIO_INCLUDES) - AC_SUBST(CSTD_INCLUDES) ]) --- 1514,1529 ---- LIBSUPCXX_INCLUDES='-I$(top_srcdir)/libsupc++' ! if test x"$need_libio" = xyes; then ! LIBIO_INCLUDES='-I$(top_builddir)/libio -I$(top_srcdir)/libio' ! AC_SUBST(LIBIO_INCLUDES) ! fi # Now, export this to all the little Makefiles.... ! AC_SUBST(GLIBCPP_INCLUDES) AC_SUBST(TOPLEVEL_INCLUDES) AC_SUBST(LIBMATH_INCLUDES) AC_SUBST(LIBSUPCXX_INCLUDES) ]) diff -Nrc3pad gcc-3.0/libstdc++-v3/config/cpu/generic/bits/limits.h gcc-3.0.1/libstdc++-v3/config/cpu/generic/bits/limits.h *** gcc-3.0/libstdc++-v3/config/cpu/generic/bits/limits.h Wed Dec 31 16:00:00 1969 --- gcc-3.0.1/libstdc++-v3/config/cpu/generic/bits/limits.h Mon Aug 13 15:22:26 2001 *************** *** 0 **** --- 1,40 ---- + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + + #ifndef _GLIBCPP_CPU_LIMITS + #define _GLIBCPP_CPU_LIMITS 1 + + // Nothing is defined in the generic file. In that way, we fall back + // on the defaults in std_limits.h. + + // If you need to override these defaults, you can either use a + // CPU-specific version (in which case you must modify + // configure.target) or you must add the overrides to your + // os_defines.h. In general, if all systems for your CPU use the + // same values, it is best to use a cpu-specific configuration file. + + #endif diff -Nrc3pad gcc-3.0/libstdc++-v3/config/cpu/i386/bits/limits.h gcc-3.0.1/libstdc++-v3/config/cpu/i386/bits/limits.h *** gcc-3.0/libstdc++-v3/config/cpu/i386/bits/limits.h Wed Dec 31 16:00:00 1969 --- gcc-3.0.1/libstdc++-v3/config/cpu/i386/bits/limits.h Mon Aug 13 15:22:26 2001 *************** *** 0 **** --- 1,33 ---- + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + + #ifndef _GLIBCPP_CPU_LIMITS + #define _GLIBCPP_CPU_LIMITS 1 + + #define __glibcpp_long_double_bits 80 + + #endif diff -Nrc3pad gcc-3.0/libstdc++-v3/config/cpu/m68k/bits/atomicity.h gcc-3.0.1/libstdc++-v3/config/cpu/m68k/bits/atomicity.h *** gcc-3.0/libstdc++-v3/config/cpu/m68k/bits/atomicity.h Wed Dec 31 16:00:00 1969 --- gcc-3.0.1/libstdc++-v3/config/cpu/m68k/bits/atomicity.h Wed Aug 15 08:50:53 2001 *************** *** 0 **** --- 1,61 ---- + // Low-level functions for atomic operations: m680x0, x >= 2 version -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + + #ifndef _BITS_ATOMICITY_H + #define _BITS_ATOMICITY_H 1 + + typedef int _Atomic_word; + + static inline _Atomic_word + __attribute__ ((__unused__)) + __exchange_and_add (volatile _Atomic_word *__mem, int __val) + { + register _Atomic_word __result = *__mem; + register _Atomic_word __temp; + __asm__ __volatile__ ("1: move%.l %0,%1;" + " add%.l %2,%1;" + " cas%.l %0,%1,%3;" + " jbne 1b" + : "=d" (__result), "=&d" (__temp) + : "d" (__val), "m" (*__mem), "0" (__result) + : "memory"); + return __result; + } + + static inline void + __attribute__ ((__unused__)) + __atomic_add (volatile _Atomic_word* __mem, int __val) + { + __asm__ __volatile__ ("add%.l %0,%1" + : : "id" (__val), "m" (*__mem) : "memory"); + } + + #endif /* atomicity.h */ + + diff -Nrc3pad gcc-3.0/libstdc++-v3/config/cpu/mips/bits/atomicity.h gcc-3.0.1/libstdc++-v3/config/cpu/mips/bits/atomicity.h *** gcc-3.0/libstdc++-v3/config/cpu/mips/bits/atomicity.h Wed Dec 31 16:00:00 1969 --- gcc-3.0.1/libstdc++-v3/config/cpu/mips/bits/atomicity.h Wed Jul 25 22:04:48 2001 *************** *** 0 **** --- 1,138 ---- + // Low-level functions for atomic operations. Mips version. + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + + #ifndef _BITS_ATOMICITY_H + #define _BITS_ATOMICITY_H 1 + + #include + + typedef int _Atomic_word; + + #if (_MIPS_ISA >= _MIPS_ISA_MIPS2) + + static inline int + __attribute__ ((unused)) + __exchange_and_add (volatile _Atomic_word *__mem, int __val) + { + int __result, __tmp; + + __asm__ __volatile__ + ("/* Inline exchange & add */\n\t" + "1:\n\t" + "ll %0,%3\n\t" + "addu %1,%4,%0\n\t" + "sc %1,%2\n\t" + "beqz %1,1b\n\t" + "/* End exchange & add */" + : "=&r"(__result), "=&r"(__tmp), "=m"(*__mem) + : "m" (*__mem), "r"(__val) + : "memory"); + + return __result; + } + + static inline void + __attribute__ ((unused)) + __atomic_add (volatile _Atomic_word *__mem, int __val) + { + int __result; + + __asm__ __volatile__ + ("/* Inline atomic add */\n\t" + "1:\n\t" + "ll %0,%2\n\t" + "addu %0,%3,%0\n\t" + "sc %0,%1\n\t" + "beqz %0,1b\n\t" + "/* End atomic add */" + : "=&r"(__result), "=m"(*__mem) + : "m" (*__mem), "r"(__val) + : "memory"); + } + + static inline int + __attribute__ ((unused)) + __compare_and_swap (volatile long int *__p, long int __oldval, + long int __newval) + { + long int __ret; + + __asm__ __volatile__ + ("/* Inline compare & swap */\n\t" + "1:\n\t" + "ll %0,%4\n\t" + ".set push\n" + ".set noreorder\n\t" + "bne %0,%2,2f\n\t" + "move %0,%3\n\t" + ".set pop\n\t" + "sc %0,%1\n\t" + "beqz %0,1b\n" + "2:\n\t" + "/* End compare & swap */" + : "=&r" (__ret), "=m" (*__p) + : "r" (__oldval), "r" (__newval), "m" (*__p) + : "memory"); + + return __ret; + } + + #else /* (_MIPS_ISA >= _MIPS_ISA_MIPS2) */ + + static inline int + __attribute__ ((unused)) + __exchange_and_add (volatile _Atomic_word *__mem, int __val) + { + int __result = *__mem; + *__mem += __val; + return __result; + } + + static inline void + __attribute__ ((unused)) + __atomic_add (volatile _Atomic_word *__mem, int __val) + { + *__mem += __val; + } + + static inline int + __attribute__ ((unused)) + __compare_and_swap (volatile long int *__p, long int __oldval, + long int __newval) + { + if (*__p != __oldval) + return 0; + + *__p = __newval; + return 1; + } + + #endif /* !(_MIPS_ISA >= _MIPS_ISA_MIPS2) */ + + #endif /* atomicity.h */ diff -Nrc3pad gcc-3.0/libstdc++-v3/config/cpu/powerpc/bits/limits.h gcc-3.0.1/libstdc++-v3/config/cpu/powerpc/bits/limits.h *** gcc-3.0/libstdc++-v3/config/cpu/powerpc/bits/limits.h Wed Dec 31 16:00:00 1969 --- gcc-3.0.1/libstdc++-v3/config/cpu/powerpc/bits/limits.h Thu Aug 16 12:09:53 2001 *************** *** 0 **** --- 1,33 ---- + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + + #ifndef _GLIBCPP_CPU_LIMITS + #define _GLIBCPP_CPU_LIMITS 1 + + #define __glibcpp_long_double_bits 64 + + #endif diff -Nrc3pad gcc-3.0/libstdc++-v3/config/cpu/s390/bits/atomicity.h gcc-3.0.1/libstdc++-v3/config/cpu/s390/bits/atomicity.h *** gcc-3.0/libstdc++-v3/config/cpu/s390/bits/atomicity.h Wed Dec 31 16:00:00 1969 --- gcc-3.0.1/libstdc++-v3/config/cpu/s390/bits/atomicity.h Tue Aug 14 15:59:34 2001 *************** *** 0 **** --- 1,60 ---- + // Low-level functions for atomic operations: S/390 version -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + + #ifndef _BITS_ATOMICITY_H + #define _BITS_ATOMICITY_H 1 + + typedef int _Atomic_word; + + static inline _Atomic_word + __attribute__ ((__unused__)) + __exchange_and_add (volatile _Atomic_word *__mem, int __val) + { + register _Atomic_word __old_val, __new_val; + + __asm__ __volatile__ (" l %0,0(%2)\n" + "0: lr %1,%0\n" + " ar %1,%3\n" + " cs %0,%1,0(%2)\n" + " jl 0b" + : "=&d" (__old_val), "=&d" (__new_val) + : "a" (__mem), "d" (__val) : "cc", "memory" ); + return __old_val; + } + + static inline void + __attribute__ ((__unused__)) + __atomic_add (volatile _Atomic_word *__mem, int __val) + { + __exchange_and_add (__mem, __val); + } + + #endif /* atomicity.h */ + + diff -Nrc3pad gcc-3.0/libstdc++-v3/config/os/aix/bits/os_defines.h gcc-3.0.1/libstdc++-v3/config/os/aix/bits/os_defines.h *** gcc-3.0/libstdc++-v3/config/os/aix/bits/os_defines.h Fri Nov 3 19:00:10 2000 --- gcc-3.0.1/libstdc++-v3/config/os/aix/bits/os_defines.h Sat Aug 11 11:12:17 2001 *************** *** 55,59 **** --- 55,69 ---- #undef _G_USING_THUNKS #define _G_USING_THUNKS 0 + #define __glibcpp_long_double_bits 64 + + #if !defined(_AIX51) || !defined(__64BIT__) + #define __glibcpp_wchar_t_bits 16 + #endif + + #ifdef __64BIT__ + #define __glibcpp_long_bits 64 + #endif + #endif diff -Nrc3pad gcc-3.0/libstdc++-v3/config/os/generic/bits/os_defines.h gcc-3.0.1/libstdc++-v3/config/os/generic/bits/os_defines.h *** gcc-3.0/libstdc++-v3/config/os/generic/bits/os_defines.h Wed Dec 6 22:44:48 2000 --- gcc-3.0.1/libstdc++-v3/config/os/generic/bits/os_defines.h Sat Aug 11 11:12:17 2001 *************** *** 34,37 **** --- 34,41 ---- // System-specific #define, typedefs, corrections, etc, go here. This // file will come before all others. + #ifdef __alpha__ + #define __glibcpp_long_bits 64 + #endif + #endif diff -Nrc3pad gcc-3.0/libstdc++-v3/config/os/gnu-linux/bits/os_defines.h gcc-3.0.1/libstdc++-v3/config/os/gnu-linux/bits/os_defines.h *** gcc-3.0/libstdc++-v3/config/os/gnu-linux/bits/os_defines.h Thu May 24 13:42:05 2001 --- gcc-3.0.1/libstdc++-v3/config/os/gnu-linux/bits/os_defines.h Wed Aug 15 08:48:36 2001 *************** typedef __loff_t __off64_t; *** 63,70 **** # define __NO_STRING_INLINES # endif #endif ! ! ! --- 63,82 ---- # define __NO_STRING_INLINES # endif + #if defined (__powerpc__) || defined (__s390__) || defined (__s390x__) + #define __glibcpp_wchar_t_is_signed true + #endif + + #if defined (__alpha__) || defined (__powerpc64__) || (defined (__sparc__) && defined(__arch64__)) || defined (__s390__) || defined (__s390x__) + #define __glibcpp_long_bits 64 + #endif + + #if defined (__alpha__) || defined (__powerpc64__) + #define __glibcpp_long_double_bits 64 + #endif + + #if defined (__mc68000__) + #define __glibcpp_long_double_bits 96 #endif ! #endif diff -Nrc3pad gcc-3.0/libstdc++-v3/config/os/hpux/bits/os_defines.h gcc-3.0.1/libstdc++-v3/config/os/hpux/bits/os_defines.h *** gcc-3.0/libstdc++-v3/config/os/hpux/bits/os_defines.h Tue Dec 5 19:23:34 2000 --- gcc-3.0.1/libstdc++-v3/config/os/hpux/bits/os_defines.h Sat Aug 11 11:12:17 2001 *************** *** 39,44 **** #define __off64_t off64_t #define __ssize_t ssize_t #endif ! --- 39,46 ---- #define __off64_t off64_t #define __ssize_t ssize_t + #ifdef __LP64__ + #define __glibcpp_long_bits 64 #endif ! #endif diff -Nrc3pad gcc-3.0/libstdc++-v3/config/os/irix/irix6.5/bits/os_defines.h gcc-3.0.1/libstdc++-v3/config/os/irix/irix6.5/bits/os_defines.h *** gcc-3.0/libstdc++-v3/config/os/irix/irix6.5/bits/os_defines.h Thu Mar 15 19:31:44 2001 --- gcc-3.0.1/libstdc++-v3/config/os/irix/irix6.5/bits/os_defines.h Sat Aug 11 11:12:17 2001 *************** *** 52,57 **** /* GCC does not use thunks on IRIX. */ #define _G_USING_THUNKS 0 ! #endif --- 52,62 ---- /* GCC does not use thunks on IRIX. */ #define _G_USING_THUNKS 0 ! #define __glibcpp_long_double_bits 64 + #if __LONG_MAX__ > 2147483647 + #define __glibcpp_wchar_t_bits 64 + #define __glibcpp_long_bits 64 + #endif + #endif diff -Nrc3pad gcc-3.0/libstdc++-v3/config/os/solaris/solaris2.7/bits/os_defines.h gcc-3.0.1/libstdc++-v3/config/os/solaris/solaris2.7/bits/os_defines.h *** gcc-3.0/libstdc++-v3/config/os/solaris/solaris2.7/bits/os_defines.h Tue Jun 12 16:10:06 2001 --- gcc-3.0.1/libstdc++-v3/config/os/solaris/solaris2.7/bits/os_defines.h Sat Aug 11 11:12:17 2001 *************** *** 45,48 **** --- 45,52 ---- // Without this all the libio vtbls are offset wrongly. #define _G_USING_THUNKS 0 + #if defined(__sparc_v9) || defined(__arch64__) + #define __glibcpp_long_bits 64 + #endif + #endif diff -Nrc3pad gcc-3.0/libstdc++-v3/config.h.in gcc-3.0.1/libstdc++-v3/config.h.in *** gcc-3.0/libstdc++-v3/config.h.in Sun Jun 10 22:06:26 2001 --- gcc-3.0.1/libstdc++-v3/config.h.in Thu Jul 26 11:24:58 2001 *************** *** 87,92 **** --- 87,95 ---- /* Define if you have the _asinl function. */ #undef HAVE__ASINL + /* Define if you have the _atan2f function. */ + #undef HAVE__ATAN2F + /* Define if you have the _atan2l function. */ #undef HAVE__ATAN2L *************** *** 159,164 **** --- 162,176 ---- /* Define if you have the _frexpl function. */ #undef HAVE__FREXPL + /* Define if you have the _hypot function. */ + #undef HAVE__HYPOT + + /* Define if you have the _hypotf function. */ + #undef HAVE__HYPOTF + + /* Define if you have the _hypotl function. */ + #undef HAVE__HYPOTL + /* Define if you have the _isinf function. */ #undef HAVE__ISINF *************** *** 305,313 **** /* Define if you have the drand48 function. */ #undef HAVE_DRAND48 - - /* Define if you have the expf function. */ - #undef HAVE_EXPF /* Define if you have the expl function. */ #undef HAVE_EXPL --- 317,322 ---- diff -Nrc3pad gcc-3.0/libstdc++-v3/configure gcc-3.0.1/libstdc++-v3/configure *** gcc-3.0/libstdc++-v3/configure Thu Jun 14 01:47:36 2001 --- gcc-3.0.1/libstdc++-v3/configure Mon Aug 13 15:21:28 2001 *************** test "$host_alias" != "$target_alias" && *** 708,713 **** --- 708,737 ---- target_alias=${target_alias-$target} + # Will set LN_S to either 'ln -s' or 'ln'. With autoconf 2.50+, can also + # be 'cp -p' if linking isn't available. + echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6 + echo "configure:715: checking whether ln -s works" >&5 + if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 + else + rm -f conftestdata + if ln -s X conftestdata 2>/dev/null + then + rm -f conftestdata + ac_cv_prog_LN_S="ln -s" + else + ac_cv_prog_LN_S=ln + fi + fi + LN_S="$ac_cv_prog_LN_S" + if test "$ac_cv_prog_LN_S" = "ln -s"; then + echo "$ac_t""yes" 1>&6 + else + echo "$ac_t""no" 1>&6 + fi + + # We use these options to decide which functions to include. # Check whether --with-target-subdir or --without-target-subdir was given. if test "${with_target_subdir+set}" = set; then *************** fi *** 736,742 **** # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # ./install, which can be erroneously created by make from ./install.sh. echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 ! echo "configure:740: checking for a BSD compatible install" >&5 if test -z "$INSTALL"; then if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 760,766 ---- # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # ./install, which can be erroneously created by make from ./install.sh. echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 ! echo "configure:764: checking for a BSD compatible install" >&5 if test -z "$INSTALL"; then if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** test -z "$INSTALL_SCRIPT" && INSTALL_SCR *** 789,795 **** test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6 ! echo "configure:793: checking whether build environment is sane" >&5 # Just in case sleep 1 echo timestamp > conftestfile --- 813,819 ---- test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6 ! echo "configure:817: checking whether build environment is sane" >&5 # Just in case sleep 1 echo timestamp > conftestfile *************** test "$program_suffix" != NONE && *** 846,852 **** test "$program_transform_name" = "" && program_transform_name="s,x,x," echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6 ! echo "configure:850: checking whether ${MAKE-make} sets \${MAKE}" >&5 set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 870,876 ---- test "$program_transform_name" = "" && program_transform_name="s,x,x," echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6 ! echo "configure:874: checking whether ${MAKE-make} sets \${MAKE}" >&5 set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** else *** 879,890 **** fi echo $ac_n "checking for Cygwin environment""... $ac_c" 1>&6 ! echo "configure:883: checking for Cygwin environment" >&5 if eval "test \"`echo '$''{'ac_cv_cygwin'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:907: checking for Cygwin environment" >&5 if eval "test \"`echo '$''{'ac_cv_cygwin'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_cygwin=yes else --- 919,925 ---- return __CYGWIN__; ; return 0; } EOF ! if { (eval echo configure:923: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_cygwin=yes else *************** echo "$ac_t""$ac_cv_cygwin" 1>&6 *** 912,930 **** CYGWIN= test "$ac_cv_cygwin" = yes && CYGWIN=yes echo $ac_n "checking for mingw32 environment""... $ac_c" 1>&6 ! echo "configure:916: checking for mingw32 environment" >&5 if eval "test \"`echo '$''{'ac_cv_mingw32'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_mingw32=yes else --- 936,954 ---- CYGWIN= test "$ac_cv_cygwin" = yes && CYGWIN=yes echo $ac_n "checking for mingw32 environment""... $ac_c" 1>&6 ! echo "configure:940: checking for mingw32 environment" >&5 if eval "test \"`echo '$''{'ac_cv_mingw32'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_mingw32=yes else *************** EOF *** 976,982 **** missing_dir=`cd $ac_aux_dir && pwd` echo $ac_n "checking for working aclocal""... $ac_c" 1>&6 ! echo "configure:980: checking for working aclocal" >&5 # Run test in a subshell; some versions of sh will print an error if # an executable is not found, even if stderr is redirected. # Redirect stdin to placate older versions of autoconf. Sigh. --- 1000,1006 ---- missing_dir=`cd $ac_aux_dir && pwd` echo $ac_n "checking for working aclocal""... $ac_c" 1>&6 ! echo "configure:1004: checking for working aclocal" >&5 # Run test in a subshell; some versions of sh will print an error if # an executable is not found, even if stderr is redirected. # Redirect stdin to placate older versions of autoconf. Sigh. *************** else *** 989,995 **** fi echo $ac_n "checking for working autoconf""... $ac_c" 1>&6 ! echo "configure:993: checking for working autoconf" >&5 # Run test in a subshell; some versions of sh will print an error if # an executable is not found, even if stderr is redirected. # Redirect stdin to placate older versions of autoconf. Sigh. --- 1013,1019 ---- fi echo $ac_n "checking for working autoconf""... $ac_c" 1>&6 ! echo "configure:1017: checking for working autoconf" >&5 # Run test in a subshell; some versions of sh will print an error if # an executable is not found, even if stderr is redirected. # Redirect stdin to placate older versions of autoconf. Sigh. *************** else *** 1002,1008 **** fi echo $ac_n "checking for working automake""... $ac_c" 1>&6 ! echo "configure:1006: checking for working automake" >&5 # Run test in a subshell; some versions of sh will print an error if # an executable is not found, even if stderr is redirected. # Redirect stdin to placate older versions of autoconf. Sigh. --- 1026,1032 ---- fi echo $ac_n "checking for working automake""... $ac_c" 1>&6 ! echo "configure:1030: checking for working automake" >&5 # Run test in a subshell; some versions of sh will print an error if # an executable is not found, even if stderr is redirected. # Redirect stdin to placate older versions of autoconf. Sigh. *************** else *** 1015,1021 **** fi echo $ac_n "checking for working autoheader""... $ac_c" 1>&6 ! echo "configure:1019: checking for working autoheader" >&5 # Run test in a subshell; some versions of sh will print an error if # an executable is not found, even if stderr is redirected. # Redirect stdin to placate older versions of autoconf. Sigh. --- 1039,1045 ---- fi echo $ac_n "checking for working autoheader""... $ac_c" 1>&6 ! echo "configure:1043: checking for working autoheader" >&5 # Run test in a subshell; some versions of sh will print an error if # an executable is not found, even if stderr is redirected. # Redirect stdin to placate older versions of autoconf. Sigh. *************** else *** 1028,1034 **** fi echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6 ! echo "configure:1032: checking for working makeinfo" >&5 # Run test in a subshell; some versions of sh will print an error if # an executable is not found, even if stderr is redirected. # Redirect stdin to placate older versions of autoconf. Sigh. --- 1052,1058 ---- fi echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6 ! echo "configure:1056: checking for working makeinfo" >&5 # Run test in a subshell; some versions of sh will print an error if # an executable is not found, even if stderr is redirected. # Redirect stdin to placate older versions of autoconf. Sigh. *************** fi *** 1063,1069 **** # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:1067: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 1087,1093 ---- # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:1091: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** if test -z "$CC"; then *** 1093,1099 **** # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:1097: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 1117,1123 ---- # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:1121: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** fi *** 1142,1148 **** fi echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 ! echo "configure:1146: checking whether we are using GNU C" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 1166,1172 ---- fi echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 ! echo "configure:1170: checking whether we are using GNU C" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** else *** 1151,1157 **** yes; #endif EOF ! if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1155: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ac_cv_prog_gcc=yes else ac_cv_prog_gcc=no --- 1175,1181 ---- yes; #endif EOF ! if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1179: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ac_cv_prog_gcc=yes else ac_cv_prog_gcc=no *************** if test $ac_cv_prog_gcc = yes; then *** 1166,1172 **** ac_save_CFLAGS="$CFLAGS" CFLAGS= echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 ! echo "configure:1170: checking whether ${CC-cc} accepts -g" >&5 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 1190,1196 ---- ac_save_CFLAGS="$CFLAGS" CFLAGS= echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 ! echo "configure:1194: checking whether ${CC-cc} accepts -g" >&5 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** do *** 1211,1217 **** # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:1215: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_glibcpp_CXX'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 1235,1241 ---- # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:1239: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_glibcpp_CXX'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** CXX=$glibcpp_CXX *** 1246,1252 **** test -z "$glibcpp_CXX" && { echo "configure: error: no acceptable c++ found in \$PATH" 1>&2; exit 1; } echo $ac_n "checking whether we are using GNU C++""... $ac_c" 1>&6 ! echo "configure:1250: checking whether we are using GNU C++" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gxx'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 1270,1276 ---- test -z "$glibcpp_CXX" && { echo "configure: error: no acceptable c++ found in \$PATH" 1>&2; exit 1; } echo $ac_n "checking whether we are using GNU C++""... $ac_c" 1>&6 ! echo "configure:1274: checking whether we are using GNU C++" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gxx'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** else *** 1255,1261 **** yes; #endif EOF ! if { ac_try='${CXX-g++} -E conftest.C'; { (eval echo configure:1259: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ac_cv_prog_gxx=yes else ac_cv_prog_gxx=no --- 1279,1285 ---- yes; #endif EOF ! if { ac_try='${CXX-g++} -E conftest.C'; { (eval echo configure:1283: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ac_cv_prog_gxx=yes else ac_cv_prog_gxx=no *************** if test $ac_cv_prog_gxx = yes; then *** 1270,1276 **** ac_save_CXXFLAGS="$CXXFLAGS" CXXFLAGS= echo $ac_n "checking whether ${CXX-g++} accepts -g""... $ac_c" 1>&6 ! echo "configure:1274: checking whether ${CXX-g++} accepts -g" >&5 if eval "test \"`echo '$''{'ac_cv_prog_cxx_g'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 1294,1300 ---- ac_save_CXXFLAGS="$CXXFLAGS" CXXFLAGS= echo $ac_n "checking whether ${CXX-g++} accepts -g""... $ac_c" 1>&6 ! echo "configure:1298: checking whether ${CXX-g++} accepts -g" >&5 if eval "test \"`echo '$''{'ac_cv_prog_cxx_g'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** fi *** 1301,1307 **** # Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args. set dummy ${ac_tool_prefix}as; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:1305: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 1325,1331 ---- # Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args. set dummy ${ac_tool_prefix}as; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:1329: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** fi *** 1333,1339 **** # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args. set dummy ${ac_tool_prefix}ar; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:1337: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 1357,1363 ---- # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args. set dummy ${ac_tool_prefix}ar; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:1361: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** fi *** 1365,1371 **** # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. set dummy ${ac_tool_prefix}ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:1369: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 1389,1395 ---- # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. set dummy ${ac_tool_prefix}ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:1393: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** if test -n "$ac_tool_prefix"; then *** 1397,1403 **** # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:1401: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 1421,1427 ---- # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:1425: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** fi *** 1441,1447 **** # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # ./install, which can be erroneously created by make from ./install.sh. echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 ! echo "configure:1445: checking for a BSD compatible install" >&5 if test -z "$INSTALL"; then if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 1465,1471 ---- # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # ./install, which can be erroneously created by make from ./install.sh. echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 ! echo "configure:1469: checking for a BSD compatible install" >&5 if test -z "$INSTALL"; then if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** test -z "$INSTALL_DATA" && INSTALL_DATA= *** 1495,1501 **** echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6 ! echo "configure:1499: checking whether to enable maintainer-specific portions of Makefiles" >&5 # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given. if test "${enable_maintainer_mode+set}" = set; then enableval="$enable_maintainer_mode" --- 1519,1525 ---- echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6 ! echo "configure:1523: checking whether to enable maintainer-specific portions of Makefiles" >&5 # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given. if test "${enable_maintainer_mode+set}" = set; then enableval="$enable_maintainer_mode" *************** fi *** 1533,1539 **** echo $ac_n "checking for executable suffix""... $ac_c" 1>&6 ! echo "configure:1537: checking for executable suffix" >&5 if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 1557,1563 ---- echo $ac_n "checking for executable suffix""... $ac_c" 1>&6 ! echo "configure:1561: checking for executable suffix" >&5 if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** else *** 1543,1549 **** rm -f conftest* echo 'int main () { return 0; }' > conftest.$ac_ext ac_cv_exeext= ! if { (eval echo configure:1547: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then for file in conftest.*; do case $file in *.c | *.o | *.obj) ;; --- 1567,1573 ---- rm -f conftest* echo 'int main () { return 0; }' > conftest.$ac_ext ac_cv_exeext= ! if { (eval echo configure:1571: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then for file in conftest.*; do case $file in *.c | *.o | *.obj) ;; *************** ac_exeext=$EXEEXT *** 1578,1584 **** . ${glibcpp_basedir}/configure.target echo "$ac_t""CPU config directory is $cpu_include_dir" 1>&6 echo "$ac_t""OS config directory is $os_include_dir" 1>&6 - --- 1602,1607 ---- *************** ac_prog=ld *** 1664,1670 **** if test "$GCC" = yes; then # Check if gcc -print-prog-name=ld gives a path. echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6 ! echo "configure:1668: checking for ld used by GCC" >&5 case $host in *-*-mingw*) # gcc leaves a trailing carriage return which upsets mingw --- 1687,1693 ---- if test "$GCC" = yes; then # Check if gcc -print-prog-name=ld gives a path. echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6 ! echo "configure:1691: checking for ld used by GCC" >&5 case $host in *-*-mingw*) # gcc leaves a trailing carriage return which upsets mingw *************** echo "configure:1668: checking for ld us *** 1694,1703 **** esac elif test "$with_gnu_ld" = yes; then echo $ac_n "checking for GNU ld""... $ac_c" 1>&6 ! echo "configure:1698: checking for GNU ld" >&5 else echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6 ! echo "configure:1701: checking for non-GNU ld" >&5 fi if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 1717,1726 ---- esac elif test "$with_gnu_ld" = yes; then echo $ac_n "checking for GNU ld""... $ac_c" 1>&6 ! echo "configure:1721: checking for GNU ld" >&5 else echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6 ! echo "configure:1724: checking for non-GNU ld" >&5 fi if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** else *** 1732,1738 **** fi test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; } echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6 ! echo "configure:1736: checking if the linker ($LD) is GNU ld" >&5 if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 1755,1761 ---- fi test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; } echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6 ! echo "configure:1759: checking if the linker ($LD) is GNU ld" >&5 if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** with_gnu_ld=$lt_cv_prog_gnu_ld *** 1749,1755 **** echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6 ! echo "configure:1753: checking for $LD option to reload object files" >&5 if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 1772,1778 ---- echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6 ! echo "configure:1776: checking for $LD option to reload object files" >&5 if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** reload_flag=$lt_cv_ld_reload_flag *** 1761,1767 **** test -n "$reload_flag" && reload_flag=" $reload_flag" echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6 ! echo "configure:1765: checking for BSD-compatible nm" >&5 if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 1784,1790 ---- test -n "$reload_flag" && reload_flag=" $reload_flag" echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6 ! echo "configure:1788: checking for BSD-compatible nm" >&5 if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** fi *** 1798,1826 **** NM="$lt_cv_path_NM" echo "$ac_t""$NM" 1>&6 - echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6 - echo "configure:1803: checking whether ln -s works" >&5 - if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - rm -f conftestdata - if ln -s X conftestdata 2>/dev/null - then - rm -f conftestdata - ac_cv_prog_LN_S="ln -s" - else - ac_cv_prog_LN_S=ln - fi - fi - LN_S="$ac_cv_prog_LN_S" - if test "$ac_cv_prog_LN_S" = "ln -s"; then - echo "$ac_t""yes" 1>&6 - else - echo "$ac_t""no" 1>&6 - fi - echo $ac_n "checking how to recognise dependant libraries""... $ac_c" 1>&6 ! echo "configure:1824: checking how to recognise dependant libraries" >&5 if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 1821,1828 ---- NM="$lt_cv_path_NM" echo "$ac_t""$NM" 1>&6 echo $ac_n "checking how to recognise dependant libraries""... $ac_c" 1>&6 ! echo "configure:1826: checking how to recognise dependant libraries" >&5 if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** file_magic_cmd=$lt_cv_file_magic_cmd *** 1984,1996 **** deplibs_check_method=$lt_cv_deplibs_check_method echo $ac_n "checking for object suffix""... $ac_c" 1>&6 ! echo "configure:1988: checking for object suffix" >&5 if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else rm -f conftest* echo 'int i = 1;' > conftest.$ac_ext ! if { (eval echo configure:1994: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then for ac_file in conftest.*; do case $ac_file in *.c) ;; --- 1986,1998 ---- deplibs_check_method=$lt_cv_deplibs_check_method echo $ac_n "checking for object suffix""... $ac_c" 1>&6 ! echo "configure:1990: checking for object suffix" >&5 if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else rm -f conftest* echo 'int i = 1;' > conftest.$ac_ext ! if { (eval echo configure:1996: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then for ac_file in conftest.*; do case $ac_file in *.c) ;; *************** case $deplibs_check_method in *** 2014,2020 **** file_magic*) if test "$file_magic_cmd" = '$MAGIC_CMD'; then echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6 ! echo "configure:2018: checking for ${ac_tool_prefix}file" >&5 if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 2016,2022 ---- file_magic*) if test "$file_magic_cmd" = '$MAGIC_CMD'; then echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6 ! echo "configure:2020: checking for ${ac_tool_prefix}file" >&5 if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** fi *** 2076,2082 **** if test -z "$lt_cv_path_MAGIC_CMD"; then if test -n "$ac_tool_prefix"; then echo $ac_n "checking for file""... $ac_c" 1>&6 ! echo "configure:2080: checking for file" >&5 if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 2078,2084 ---- if test -z "$lt_cv_path_MAGIC_CMD"; then if test -n "$ac_tool_prefix"; then echo $ac_n "checking for file""... $ac_c" 1>&6 ! echo "configure:2082: checking for file" >&5 if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** esac *** 2147,2153 **** # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. set dummy ${ac_tool_prefix}ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:2151: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 2149,2155 ---- # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. set dummy ${ac_tool_prefix}ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:2153: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** if test -n "$ac_tool_prefix"; then *** 2179,2185 **** # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:2183: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 2181,2187 ---- # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:2185: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** fi *** 2214,2220 **** # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. set dummy ${ac_tool_prefix}strip; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:2218: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 2216,2222 ---- # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. set dummy ${ac_tool_prefix}strip; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:2220: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** if test -n "$ac_tool_prefix"; then *** 2246,2252 **** # Extract the first word of "strip", so it can be a program name with args. set dummy strip; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:2250: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 2248,2254 ---- # Extract the first word of "strip", so it can be a program name with args. set dummy strip; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:2252: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** test x"$pic_mode" = xno && libtool_flags *** 2313,2320 **** case $host in *-*-irix6*) # Find out which ABI we are using. ! echo '#line 2317 "configure"' > conftest.$ac_ext ! if { (eval echo configure:2318: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -32" --- 2315,2322 ---- case $host in *-*-irix6*) # Find out which ABI we are using. ! echo '#line 2319 "configure"' > conftest.$ac_ext ! if { (eval echo configure:2320: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -32" *************** case $host in *** 2335,2341 **** SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -belf" echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6 ! echo "configure:2339: checking whether the C compiler needs -belf" >&5 if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 2337,2343 ---- SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -belf" echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6 ! echo "configure:2341: checking whether the C compiler needs -belf" >&5 if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** ac_link='${CC-cc} -o conftest${ac_exeext *** 2348,2361 **** cross_compiling=$ac_cv_prog_cc_cross cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* lt_cv_cc_needs_belf=yes else --- 2350,2363 ---- cross_compiling=$ac_cv_prog_cc_cross cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* lt_cv_cc_needs_belf=yes else *************** echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6 *** 2385,2391 **** esac echo $ac_n "checking how to run the C++ preprocessor""... $ac_c" 1>&6 ! echo "configure:2389: checking how to run the C++ preprocessor" >&5 if test -z "$CXXCPP"; then if eval "test \"`echo '$''{'ac_cv_prog_CXXCPP'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 2387,2393 ---- esac echo $ac_n "checking how to run the C++ preprocessor""... $ac_c" 1>&6 ! echo "configure:2391: checking how to run the C++ preprocessor" >&5 if test -z "$CXXCPP"; then if eval "test \"`echo '$''{'ac_cv_prog_CXXCPP'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 2398,2409 **** cross_compiling=$ac_cv_prog_cxx_cross CXXCPP="${CXX-g++} -E" cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:2407: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : --- 2400,2411 ---- cross_compiling=$ac_cv_prog_cxx_cross CXXCPP="${CXX-g++} -E" cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:2409: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : *************** exec 5>>./config.log *** 2538,2544 **** echo $ac_n "checking for GNU make""... $ac_c" 1>&6 ! echo "configure:2542: checking for GNU make" >&5 if eval "test \"`echo '$''{'_cv_gnu_make_command'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 2540,2546 ---- echo $ac_n "checking for GNU make""... $ac_c" 1>&6 ! echo "configure:2544: checking for GNU make" >&5 if eval "test \"`echo '$''{'_cv_gnu_make_command'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** echo "$ac_t""$_cv_gnu_make_command" 1>&6 *** 2566,2573 **** - - # Check for c++ or library specific bits that don't require linking. if test ! -f stamp-sanity-compiler; then --- 2568,2573 ---- *************** fi *** 3601,3607 **** case "$enable_cheaders" in c_shadow) CSHADOW_FLAGS="-fno-builtin" ! C_INCLUDE_DIR='${top_srcdir}/include/c_shadow' cat >> confdefs.h <<\EOF #define _GLIBCPP_USE_SHADOW_HEADERS 1 EOF --- 3601,3607 ---- case "$enable_cheaders" in c_shadow) CSHADOW_FLAGS="-fno-builtin" ! C_INCLUDE_DIR='${glibcpp_srcdir}/include/c_shadow' cat >> confdefs.h <<\EOF #define _GLIBCPP_USE_SHADOW_HEADERS 1 EOF *************** EOF *** 3609,3619 **** ;; c_std) CSHADOW_FLAGS="" ! C_INCLUDE_DIR='${top_srcdir}/include/c_std' ;; c) CSHADOW_FLAGS="" ! C_INCLUDE_DIR='${top_srcdir}/include/c' ;; esac --- 3609,3619 ---- ;; c_std) CSHADOW_FLAGS="" ! C_INCLUDE_DIR='${glibcpp_srcdir}/include/c_std' ;; c) CSHADOW_FLAGS="" ! C_INCLUDE_DIR='${glibcpp_srcdir}/include/c' ;; esac *************** echo "configure:3635: checking for threa *** 3635,3643 **** target_thread_file=`$CC -v 2>&1 | sed -n 's/^Thread model: //p'` echo "$ac_t""$target_thread_file" 1>&6 - - - if test $target_thread_file != single; then cat >> confdefs.h <<\EOF #define HAVE_GTHR_DEFAULT 1 --- 3635,3640 ---- *************** EOF *** 3648,3653 **** --- 3645,3652 ---- EOF fi + + glibcpp_thread_h=gthr-$target_thread_file.h # Check whether --enable-cxx-flags or --disable-cxx-flags was given. *************** EXTRA_CXX_FLAGS="$enable_cxx_flags" *** 3685,3691 **** echo $ac_n "checking for exception model to use""... $ac_c" 1>&6 ! echo "configure:3689: checking for exception model to use" >&5 ac_ext=C # CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. --- 3684,3690 ---- echo $ac_n "checking for exception model to use""... $ac_c" 1>&6 ! echo "configure:3688: checking for exception model to use" >&5 ac_ext=C # CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. *************** if test "${enable_sjlj_exceptions+set}" *** 3700,3706 **** : else cat > conftest.$ac_ext << EOF ! #line 3704 "configure" struct S { ~S(); }; void bar(); void foo() --- 3699,3705 ---- : else cat > conftest.$ac_ext << EOF ! #line 3703 "configure" struct S { ~S(); }; void bar(); void foo() *************** void foo() *** 3711,3717 **** EOF old_CXXFLAGS="$CXXFLAGS" CXXFLAGS=-S ! if { (eval echo configure:3715: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then if grep _Unwind_SjLj_Resume conftest.s >/dev/null 2>&1 ; then enable_sjlj_exceptions=yes elif grep _Unwind_Resume conftest.s >/dev/null 2>&1 ; then --- 3710,3716 ---- EOF old_CXXFLAGS="$CXXFLAGS" CXXFLAGS=-S ! if { (eval echo configure:3714: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then if grep _Unwind_SjLj_Resume conftest.s >/dev/null 2>&1 ; then enable_sjlj_exceptions=yes elif grep _Unwind_Resume conftest.s >/dev/null 2>&1 ; then *************** cross_compiling=$ac_cv_prog_cc_cross *** 3743,3764 **** echo "$ac_t""$ac_exception_model_name" 1>&6 ! if test -n "$with_cross_host"; then ! # We are being configured with a cross compiler. AC_REPLACE_FUNCS ! # may not work correctly, because the compiler may not be able to ! # link executables. ! xcompiling=1 ! NATIVE=no # If Canadian cross, then don't pick up tools from the build # directory. ! if test x"$build" != x"$with_cross_host" && x"$build" != x"$target"; then CANADIAN=yes - NULL_TARGET=yes else CANADIAN=no - NULL_TARGET=no fi case "$target_alias" in --- 3742,3762 ---- echo "$ac_t""$ac_exception_model_name" 1>&6 ! if test -n "$with_cross_host" || test x"$build" != x"$host"; then ! # We are being configured with some form of cross compiler. ! # mknumeric_limits may not work correctly, either because the ! # compiler may not run on this machine, may not be able to link ! # executables, or may produce executables we can't run on this ! # machine. ! GLIBCPP_IS_CROSS_COMPILING=1 # If Canadian cross, then don't pick up tools from the build # directory. ! if test -n "$with_cross_host" && test x"$build" != x"$with_cross_host"; then CANADIAN=yes else CANADIAN=no fi case "$target_alias" in *************** if test -n "$with_cross_host"; then *** 3771,3787 **** do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 ! echo "configure:3775: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:3785: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* --- 3769,3785 ---- do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 ! echo "configure:3773: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:3783: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* *************** done *** 3837,3848 **** # used sections, first .eh_frame and now some of the glibc sections for # iconv). Bzzzzt. Thanks for playing, maybe next time. echo $ac_n "checking for ld that supports -Wl,--gc-sections""... $ac_c" 1>&6 ! echo "configure:3841: checking for ld that supports -Wl,--gc-sections" >&5 if test "$cross_compiling" = yes; then ac_sectionLDflags=yes else cat > conftest.$ac_ext <&6 ! echo "configure:3839: checking for ld that supports -Wl,--gc-sections" >&5 if test "$cross_compiling" = yes; then ac_sectionLDflags=yes else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_sectionLDflags=yes else --- 3851,3857 ---- } EOF ! if { (eval echo configure:3855: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_sectionLDflags=yes else *************** EOF *** 4131,4137 **** fi echo $ac_n "checking for main in -lm""... $ac_c" 1>&6 ! echo "configure:4135: checking for main in -lm" >&5 ac_lib_var=`echo m'_'main | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 4129,4135 ---- fi echo $ac_n "checking for main in -lm""... $ac_c" 1>&6 ! echo "configure:4133: checking for main in -lm" >&5 ac_lib_var=`echo m'_'main | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** else *** 4139,4152 **** ac_save_LIBS="$LIBS" LIBS="-lm $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else --- 4137,4150 ---- ac_save_LIBS="$LIBS" LIBS="-lm $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else *************** else *** 4173,4187 **** echo "$ac_t""no" 1>&6 fi ! for ac_func in nan hypot hypotf atan2f expf copysignf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:4180: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 fi ! for ac_func in nan copysignf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:4178: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 4202,4208 ---- ; return 0; } EOF ! if { (eval echo configure:4206: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 4232,4249 **** USE_COMPLEX_LONG_DOUBLE=no ! if test x$ac_cv_func_atan2l = x"yes" \ ! && test x$ac_cv_func_copysignl = x"yes"; then USE_COMPLEX_LONG_DOUBLE=yes ! for ac_func in hypotl signbitl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:4242: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:4239: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 4263,4269 ---- ; return 0; } EOF ! if { (eval echo configure:4267: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 4299,4314 **** echo $ac_n "checking for mbstate_t""... $ac_c" 1>&6 ! echo "configure:4303: checking for mbstate_t" >&5 cat > conftest.$ac_ext < int main() { mbstate_t teststate; ; return 0; } EOF ! if { (eval echo configure:4312: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* have_mbstate_t=yes else --- 4296,4311 ---- echo $ac_n "checking for mbstate_t""... $ac_c" 1>&6 ! echo "configure:4300: checking for mbstate_t" >&5 cat > conftest.$ac_ext < int main() { mbstate_t teststate; ; return 0; } EOF ! if { (eval echo configure:4309: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* have_mbstate_t=yes else *************** EOF *** 4330,4346 **** do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 ! echo "configure:4334: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:4344: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* --- 4327,4343 ---- do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 ! echo "configure:4331: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:4341: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* *************** done *** 4369,4385 **** ac_safe=`echo "wctype.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for wctype.h""... $ac_c" 1>&6 ! echo "configure:4373: checking for wctype.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:4383: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* --- 4366,4382 ---- ac_safe=`echo "wctype.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for wctype.h""... $ac_c" 1>&6 ! echo "configure:4370: checking for wctype.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:4380: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* *************** fi *** 4406,4421 **** && test x"$enable_c_mbchar" != xno; then echo $ac_n "checking for WCHAR_MIN and WCHAR_MAX""... $ac_c" 1>&6 ! echo "configure:4410: checking for WCHAR_MIN and WCHAR_MAX" >&5 cat > conftest.$ac_ext < int main() { int i = WCHAR_MIN; int j = WCHAR_MAX; ; return 0; } EOF ! if { (eval echo configure:4419: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* has_wchar_minmax=yes else --- 4403,4418 ---- && test x"$enable_c_mbchar" != xno; then echo $ac_n "checking for WCHAR_MIN and WCHAR_MAX""... $ac_c" 1>&6 ! echo "configure:4407: checking for WCHAR_MIN and WCHAR_MAX" >&5 cat > conftest.$ac_ext < int main() { int i = WCHAR_MIN; int j = WCHAR_MAX; ; return 0; } EOF ! if { (eval echo configure:4416: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* has_wchar_minmax=yes else *************** rm -f conftest* *** 4428,4436 **** echo "$ac_t""$has_wchar_minmax" 1>&6 echo $ac_n "checking for WEOF""... $ac_c" 1>&6 ! echo "configure:4432: checking for WEOF" >&5 cat > conftest.$ac_ext < --- 4425,4433 ---- echo "$ac_t""$has_wchar_minmax" 1>&6 echo $ac_n "checking for WEOF""... $ac_c" 1>&6 ! echo "configure:4429: checking for WEOF" >&5 cat > conftest.$ac_ext < *************** int main() { *** 4439,4445 **** wint_t i = WEOF; ; return 0; } EOF ! if { (eval echo configure:4443: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* has_weof=yes else --- 4436,4442 ---- wint_t i = WEOF; ; return 0; } EOF ! if { (eval echo configure:4440: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* has_weof=yes else *************** rm -f conftest* *** 4455,4466 **** for ac_func in wcslen wmemchr wmemcmp wmemcpy wmemmove wmemset do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:4459: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:4456: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 4480,4486 ---- ; return 0; } EOF ! if { (eval echo configure:4484: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 4518,4529 **** wcscspn wcsspn wcstok wcsftime wcschr wcspbrk wcsrchr wcsstr do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:4522: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:4519: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 4543,4549 ---- ; return 0; } EOF ! if { (eval echo configure:4547: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 4574,4580 **** echo $ac_n "checking for ISO C99 wchar_t support""... $ac_c" 1>&6 ! echo "configure:4578: checking for ISO C99 wchar_t support" >&5 if test x"$has_weof" = xyes && test x"$has_wchar_minmax" = xyes \ && test x"$ac_wfuncs" = xyes; then ac_isoC99_wchar_t=yes --- 4571,4577 ---- echo $ac_n "checking for ISO C99 wchar_t support""... $ac_c" 1>&6 ! echo "configure:4575: checking for ISO C99 wchar_t support" >&5 if test x"$has_weof" = xyes && test x"$has_wchar_minmax" = xyes \ && test x"$ac_wfuncs" = xyes; then ac_isoC99_wchar_t=yes *************** echo "configure:4578: checking for ISO C *** 4585,4601 **** ac_safe=`echo "iconv.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for iconv.h""... $ac_c" 1>&6 ! echo "configure:4589: checking for iconv.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:4599: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* --- 4582,4598 ---- ac_safe=`echo "iconv.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for iconv.h""... $ac_c" 1>&6 ! echo "configure:4586: checking for iconv.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:4596: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* *************** fi *** 4619,4635 **** ac_safe=`echo "langinfo.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for langinfo.h""... $ac_c" 1>&6 ! echo "configure:4623: checking for langinfo.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:4633: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* --- 4616,4632 ---- ac_safe=`echo "langinfo.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for langinfo.h""... $ac_c" 1>&6 ! echo "configure:4620: checking for langinfo.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:4630: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* *************** fi *** 4653,4659 **** echo $ac_n "checking for iconv in -liconv""... $ac_c" 1>&6 ! echo "configure:4657: checking for iconv in -liconv" >&5 ac_lib_var=`echo iconv'_'iconv | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 4650,4656 ---- echo $ac_n "checking for iconv in -liconv""... $ac_c" 1>&6 ! echo "configure:4654: checking for iconv in -liconv" >&5 ac_lib_var=`echo iconv'_'iconv | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** else *** 4661,4667 **** ac_save_LIBS="$LIBS" LIBS="-liconv $LIBS" cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else --- 4669,4675 ---- iconv() ; return 0; } EOF ! if { (eval echo configure:4673: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else *************** fi *** 4698,4709 **** for ac_func in iconv_open iconv_close iconv nl_langinfo do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:4702: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:4699: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 4723,4729 ---- ; return 0; } EOF ! if { (eval echo configure:4727: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 4756,4762 **** LIBS="$ac_save_LIBS" echo $ac_n "checking for XPG2 wchar_t support""... $ac_c" 1>&6 ! echo "configure:4760: checking for XPG2 wchar_t support" >&5 if test x"$ac_has_iconv_h" = xyes && test x"$ac_has_langinfo_h" = xyes \ && test x"$ac_XPG2funcs" = xyes; then ac_XPG2_wchar_t=yes --- 4753,4759 ---- LIBS="$ac_save_LIBS" echo $ac_n "checking for XPG2 wchar_t support""... $ac_c" 1>&6 ! echo "configure:4757: checking for XPG2 wchar_t support" >&5 if test x"$ac_has_iconv_h" = xyes && test x"$ac_has_langinfo_h" = xyes \ && test x"$ac_XPG2funcs" = xyes; then ac_XPG2_wchar_t=yes *************** echo "configure:4760: checking for XPG2 *** 4766,4772 **** echo "$ac_t""$ac_XPG2_wchar_t" 1>&6 echo $ac_n "checking for enabled wchar_t specializations""... $ac_c" 1>&6 ! echo "configure:4770: checking for enabled wchar_t specializations" >&5 if test x"$ac_isoC99_wchar_t" = xyes \ && test x"$ac_XPG2_wchar_t" = xyes; then cat >> confdefs.h <<\EOF --- 4763,4769 ---- echo "$ac_t""$ac_XPG2_wchar_t" 1>&6 echo $ac_n "checking for enabled wchar_t specializations""... $ac_c" 1>&6 ! echo "configure:4767: checking for enabled wchar_t specializations" >&5 if test x"$ac_isoC99_wchar_t" = xyes \ && test x"$ac_XPG2_wchar_t" = xyes; then cat >> confdefs.h <<\EOF *************** else *** 4831,4840 **** # We are being configured natively. We can do more elaborate tests # that include AC_TRY_COMPILE now, as the linker is assumed to be # working. ! xcompiling=0 ! NATIVE=yes CANADIAN=no - NULL_TARGET=no # Check for available headers. for ac_hdr in nan.h ieeefp.h endian.h sys/isa_defs.h machine/endian.h \ --- 4828,4835 ---- # We are being configured natively. We can do more elaborate tests # that include AC_TRY_COMPILE now, as the linker is assumed to be # working. ! GLIBCPP_IS_CROSS_COMPILING=0 CANADIAN=no # Check for available headers. for ac_hdr in nan.h ieeefp.h endian.h sys/isa_defs.h machine/endian.h \ *************** else *** 4842,4858 **** do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 ! echo "configure:4846: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:4856: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* --- 4837,4853 ---- do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 ! echo "configure:4841: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:4851: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* *************** cross_compiling=$ac_cv_prog_cxx_cross *** 4903,4912 **** # Check for -ffunction-sections -fdata-sections echo $ac_n "checking for g++ that supports -ffunction-sections -fdata-sections""... $ac_c" 1>&6 ! echo "configure:4907: checking for g++ that supports -ffunction-sections -fdata-sections" >&5 CXXFLAGS='-Werror -ffunction-sections -fdata-sections' cat > conftest.$ac_ext <&6 ! echo "configure:4902: checking for g++ that supports -ffunction-sections -fdata-sections" >&5 CXXFLAGS='-Werror -ffunction-sections -fdata-sections' cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_fdsections=yes else --- 4909,4915 ---- ; return 0; } EOF ! if { (eval echo configure:4913: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_fdsections=yes else *************** cross_compiling=$ac_cv_prog_cc_cross *** 4971,4982 **** # used sections, first .eh_frame and now some of the glibc sections for # iconv). Bzzzzt. Thanks for playing, maybe next time. echo $ac_n "checking for ld that supports -Wl,--gc-sections""... $ac_c" 1>&6 ! echo "configure:4975: checking for ld that supports -Wl,--gc-sections" >&5 if test "$cross_compiling" = yes; then ac_sectionLDflags=yes else cat > conftest.$ac_ext <&6 ! echo "configure:4970: checking for ld that supports -Wl,--gc-sections" >&5 if test "$cross_compiling" = yes; then ac_sectionLDflags=yes else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_sectionLDflags=yes else --- 4982,4988 ---- } EOF ! if { (eval echo configure:4986: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_sectionLDflags=yes else *************** fi *** 5022,5028 **** echo $ac_n "checking for __builtin_abs declaration""... $ac_c" 1>&6 ! echo "configure:5026: checking for __builtin_abs declaration" >&5 if test x${glibcpp_cv_func___builtin_abs_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_abs_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 5017,5023 ---- echo $ac_n "checking for __builtin_abs declaration""... $ac_c" 1>&6 ! echo "configure:5021: checking for __builtin_abs declaration" >&5 if test x${glibcpp_cv_func___builtin_abs_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_abs_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 5037,5050 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_abs(0); ; return 0; } EOF ! if { (eval echo configure:5048: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_abs_use=yes else --- 5032,5045 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_abs(0); ; return 0; } EOF ! if { (eval echo configure:5043: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_abs_use=yes else *************** fi *** 5068,5088 **** echo "$ac_t""$glibcpp_cv_func___builtin_abs_use" 1>&6 if test x$glibcpp_cv_func___builtin_abs_use = x"yes"; then echo $ac_n "checking for __builtin_abs linkage""... $ac_c" 1>&6 ! echo "configure:5072: checking for __builtin_abs linkage" >&5 if test x${glibcpp_cv_func___builtin_abs_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_abs_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_abs(0); ; return 0; } EOF ! if { (eval echo configure:5086: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_abs_link=yes else --- 5063,5083 ---- echo "$ac_t""$glibcpp_cv_func___builtin_abs_use" 1>&6 if test x$glibcpp_cv_func___builtin_abs_use = x"yes"; then echo $ac_n "checking for __builtin_abs linkage""... $ac_c" 1>&6 ! echo "configure:5067: checking for __builtin_abs linkage" >&5 if test x${glibcpp_cv_func___builtin_abs_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_abs_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_abs(0); ; return 0; } EOF ! if { (eval echo configure:5081: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_abs_link=yes else *************** EOF *** 5108,5114 **** echo $ac_n "checking for __builtin_fabsf declaration""... $ac_c" 1>&6 ! echo "configure:5112: checking for __builtin_fabsf declaration" >&5 if test x${glibcpp_cv_func___builtin_fabsf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_fabsf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 5103,5109 ---- echo $ac_n "checking for __builtin_fabsf declaration""... $ac_c" 1>&6 ! echo "configure:5107: checking for __builtin_fabsf declaration" >&5 if test x${glibcpp_cv_func___builtin_fabsf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_fabsf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 5123,5136 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_fabsf(0); ; return 0; } EOF ! if { (eval echo configure:5134: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_fabsf_use=yes else --- 5118,5131 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_fabsf(0); ; return 0; } EOF ! if { (eval echo configure:5129: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_fabsf_use=yes else *************** fi *** 5154,5174 **** echo "$ac_t""$glibcpp_cv_func___builtin_fabsf_use" 1>&6 if test x$glibcpp_cv_func___builtin_fabsf_use = x"yes"; then echo $ac_n "checking for __builtin_fabsf linkage""... $ac_c" 1>&6 ! echo "configure:5158: checking for __builtin_fabsf linkage" >&5 if test x${glibcpp_cv_func___builtin_fabsf_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_fabsf_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_fabsf(0); ; return 0; } EOF ! if { (eval echo configure:5172: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_fabsf_link=yes else --- 5149,5169 ---- echo "$ac_t""$glibcpp_cv_func___builtin_fabsf_use" 1>&6 if test x$glibcpp_cv_func___builtin_fabsf_use = x"yes"; then echo $ac_n "checking for __builtin_fabsf linkage""... $ac_c" 1>&6 ! echo "configure:5153: checking for __builtin_fabsf linkage" >&5 if test x${glibcpp_cv_func___builtin_fabsf_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_fabsf_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_fabsf(0); ; return 0; } EOF ! if { (eval echo configure:5167: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_fabsf_link=yes else *************** EOF *** 5194,5200 **** echo $ac_n "checking for __builtin_fabs declaration""... $ac_c" 1>&6 ! echo "configure:5198: checking for __builtin_fabs declaration" >&5 if test x${glibcpp_cv_func___builtin_fabs_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_fabs_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 5189,5195 ---- echo $ac_n "checking for __builtin_fabs declaration""... $ac_c" 1>&6 ! echo "configure:5193: checking for __builtin_fabs declaration" >&5 if test x${glibcpp_cv_func___builtin_fabs_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_fabs_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 5209,5222 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_fabs(0); ; return 0; } EOF ! if { (eval echo configure:5220: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_fabs_use=yes else --- 5204,5217 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_fabs(0); ; return 0; } EOF ! if { (eval echo configure:5215: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_fabs_use=yes else *************** fi *** 5240,5260 **** echo "$ac_t""$glibcpp_cv_func___builtin_fabs_use" 1>&6 if test x$glibcpp_cv_func___builtin_fabs_use = x"yes"; then echo $ac_n "checking for __builtin_fabs linkage""... $ac_c" 1>&6 ! echo "configure:5244: checking for __builtin_fabs linkage" >&5 if test x${glibcpp_cv_func___builtin_fabs_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_fabs_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_fabs(0); ; return 0; } EOF ! if { (eval echo configure:5258: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_fabs_link=yes else --- 5235,5255 ---- echo "$ac_t""$glibcpp_cv_func___builtin_fabs_use" 1>&6 if test x$glibcpp_cv_func___builtin_fabs_use = x"yes"; then echo $ac_n "checking for __builtin_fabs linkage""... $ac_c" 1>&6 ! echo "configure:5239: checking for __builtin_fabs linkage" >&5 if test x${glibcpp_cv_func___builtin_fabs_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_fabs_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_fabs(0); ; return 0; } EOF ! if { (eval echo configure:5253: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_fabs_link=yes else *************** EOF *** 5280,5286 **** echo $ac_n "checking for __builtin_fabsl declaration""... $ac_c" 1>&6 ! echo "configure:5284: checking for __builtin_fabsl declaration" >&5 if test x${glibcpp_cv_func___builtin_fabsl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_fabsl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 5275,5281 ---- echo $ac_n "checking for __builtin_fabsl declaration""... $ac_c" 1>&6 ! echo "configure:5279: checking for __builtin_fabsl declaration" >&5 if test x${glibcpp_cv_func___builtin_fabsl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_fabsl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 5295,5308 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_fabsl(0); ; return 0; } EOF ! if { (eval echo configure:5306: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_fabsl_use=yes else --- 5290,5303 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_fabsl(0); ; return 0; } EOF ! if { (eval echo configure:5301: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_fabsl_use=yes else *************** fi *** 5326,5346 **** echo "$ac_t""$glibcpp_cv_func___builtin_fabsl_use" 1>&6 if test x$glibcpp_cv_func___builtin_fabsl_use = x"yes"; then echo $ac_n "checking for __builtin_fabsl linkage""... $ac_c" 1>&6 ! echo "configure:5330: checking for __builtin_fabsl linkage" >&5 if test x${glibcpp_cv_func___builtin_fabsl_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_fabsl_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_fabsl(0); ; return 0; } EOF ! if { (eval echo configure:5344: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_fabsl_link=yes else --- 5321,5341 ---- echo "$ac_t""$glibcpp_cv_func___builtin_fabsl_use" 1>&6 if test x$glibcpp_cv_func___builtin_fabsl_use = x"yes"; then echo $ac_n "checking for __builtin_fabsl linkage""... $ac_c" 1>&6 ! echo "configure:5325: checking for __builtin_fabsl linkage" >&5 if test x${glibcpp_cv_func___builtin_fabsl_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_fabsl_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_fabsl(0); ; return 0; } EOF ! if { (eval echo configure:5339: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_fabsl_link=yes else *************** EOF *** 5366,5372 **** echo $ac_n "checking for __builtin_labs declaration""... $ac_c" 1>&6 ! echo "configure:5370: checking for __builtin_labs declaration" >&5 if test x${glibcpp_cv_func___builtin_labs_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_labs_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 5361,5367 ---- echo $ac_n "checking for __builtin_labs declaration""... $ac_c" 1>&6 ! echo "configure:5365: checking for __builtin_labs declaration" >&5 if test x${glibcpp_cv_func___builtin_labs_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_labs_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 5381,5394 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_labs(0); ; return 0; } EOF ! if { (eval echo configure:5392: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_labs_use=yes else --- 5376,5389 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_labs(0); ; return 0; } EOF ! if { (eval echo configure:5387: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_labs_use=yes else *************** fi *** 5412,5432 **** echo "$ac_t""$glibcpp_cv_func___builtin_labs_use" 1>&6 if test x$glibcpp_cv_func___builtin_labs_use = x"yes"; then echo $ac_n "checking for __builtin_labs linkage""... $ac_c" 1>&6 ! echo "configure:5416: checking for __builtin_labs linkage" >&5 if test x${glibcpp_cv_func___builtin_labs_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_labs_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_labs(0); ; return 0; } EOF ! if { (eval echo configure:5430: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_labs_link=yes else --- 5407,5427 ---- echo "$ac_t""$glibcpp_cv_func___builtin_labs_use" 1>&6 if test x$glibcpp_cv_func___builtin_labs_use = x"yes"; then echo $ac_n "checking for __builtin_labs linkage""... $ac_c" 1>&6 ! echo "configure:5411: checking for __builtin_labs linkage" >&5 if test x${glibcpp_cv_func___builtin_labs_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_labs_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_labs(0); ; return 0; } EOF ! if { (eval echo configure:5425: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_labs_link=yes else *************** EOF *** 5453,5459 **** echo $ac_n "checking for __builtin_sqrtf declaration""... $ac_c" 1>&6 ! echo "configure:5457: checking for __builtin_sqrtf declaration" >&5 if test x${glibcpp_cv_func___builtin_sqrtf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_sqrtf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 5448,5454 ---- echo $ac_n "checking for __builtin_sqrtf declaration""... $ac_c" 1>&6 ! echo "configure:5452: checking for __builtin_sqrtf declaration" >&5 if test x${glibcpp_cv_func___builtin_sqrtf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_sqrtf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 5468,5481 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_sqrtf(0); ; return 0; } EOF ! if { (eval echo configure:5479: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_sqrtf_use=yes else --- 5463,5476 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_sqrtf(0); ; return 0; } EOF ! if { (eval echo configure:5474: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_sqrtf_use=yes else *************** fi *** 5499,5519 **** echo "$ac_t""$glibcpp_cv_func___builtin_sqrtf_use" 1>&6 if test x$glibcpp_cv_func___builtin_sqrtf_use = x"yes"; then echo $ac_n "checking for __builtin_sqrtf linkage""... $ac_c" 1>&6 ! echo "configure:5503: checking for __builtin_sqrtf linkage" >&5 if test x${glibcpp_cv_func___builtin_sqrtf_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_sqrtf_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_sqrtf(0); ; return 0; } EOF ! if { (eval echo configure:5517: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_sqrtf_link=yes else --- 5494,5514 ---- echo "$ac_t""$glibcpp_cv_func___builtin_sqrtf_use" 1>&6 if test x$glibcpp_cv_func___builtin_sqrtf_use = x"yes"; then echo $ac_n "checking for __builtin_sqrtf linkage""... $ac_c" 1>&6 ! echo "configure:5498: checking for __builtin_sqrtf linkage" >&5 if test x${glibcpp_cv_func___builtin_sqrtf_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_sqrtf_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_sqrtf(0); ; return 0; } EOF ! if { (eval echo configure:5512: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_sqrtf_link=yes else *************** EOF *** 5539,5545 **** echo $ac_n "checking for __builtin_fsqrt declaration""... $ac_c" 1>&6 ! echo "configure:5543: checking for __builtin_fsqrt declaration" >&5 if test x${glibcpp_cv_func___builtin_fsqrt_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_fsqrt_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 5534,5540 ---- echo $ac_n "checking for __builtin_fsqrt declaration""... $ac_c" 1>&6 ! echo "configure:5538: checking for __builtin_fsqrt declaration" >&5 if test x${glibcpp_cv_func___builtin_fsqrt_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_fsqrt_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 5554,5567 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_fsqrt(0); ; return 0; } EOF ! if { (eval echo configure:5565: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_fsqrt_use=yes else --- 5549,5562 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_fsqrt(0); ; return 0; } EOF ! if { (eval echo configure:5560: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_fsqrt_use=yes else *************** fi *** 5585,5605 **** echo "$ac_t""$glibcpp_cv_func___builtin_fsqrt_use" 1>&6 if test x$glibcpp_cv_func___builtin_fsqrt_use = x"yes"; then echo $ac_n "checking for __builtin_fsqrt linkage""... $ac_c" 1>&6 ! echo "configure:5589: checking for __builtin_fsqrt linkage" >&5 if test x${glibcpp_cv_func___builtin_fsqrt_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_fsqrt_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_fsqrt(0); ; return 0; } EOF ! if { (eval echo configure:5603: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_fsqrt_link=yes else --- 5580,5600 ---- echo "$ac_t""$glibcpp_cv_func___builtin_fsqrt_use" 1>&6 if test x$glibcpp_cv_func___builtin_fsqrt_use = x"yes"; then echo $ac_n "checking for __builtin_fsqrt linkage""... $ac_c" 1>&6 ! echo "configure:5584: checking for __builtin_fsqrt linkage" >&5 if test x${glibcpp_cv_func___builtin_fsqrt_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_fsqrt_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_fsqrt(0); ; return 0; } EOF ! if { (eval echo configure:5598: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_fsqrt_link=yes else *************** EOF *** 5625,5631 **** echo $ac_n "checking for __builtin_sqrtl declaration""... $ac_c" 1>&6 ! echo "configure:5629: checking for __builtin_sqrtl declaration" >&5 if test x${glibcpp_cv_func___builtin_sqrtl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_sqrtl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 5620,5626 ---- echo $ac_n "checking for __builtin_sqrtl declaration""... $ac_c" 1>&6 ! echo "configure:5624: checking for __builtin_sqrtl declaration" >&5 if test x${glibcpp_cv_func___builtin_sqrtl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_sqrtl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 5640,5653 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_sqrtl(0); ; return 0; } EOF ! if { (eval echo configure:5651: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_sqrtl_use=yes else --- 5635,5648 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_sqrtl(0); ; return 0; } EOF ! if { (eval echo configure:5646: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_sqrtl_use=yes else *************** fi *** 5671,5691 **** echo "$ac_t""$glibcpp_cv_func___builtin_sqrtl_use" 1>&6 if test x$glibcpp_cv_func___builtin_sqrtl_use = x"yes"; then echo $ac_n "checking for __builtin_sqrtl linkage""... $ac_c" 1>&6 ! echo "configure:5675: checking for __builtin_sqrtl linkage" >&5 if test x${glibcpp_cv_func___builtin_sqrtl_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_sqrtl_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_sqrtl(0); ; return 0; } EOF ! if { (eval echo configure:5689: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_sqrtl_link=yes else --- 5666,5686 ---- echo "$ac_t""$glibcpp_cv_func___builtin_sqrtl_use" 1>&6 if test x$glibcpp_cv_func___builtin_sqrtl_use = x"yes"; then echo $ac_n "checking for __builtin_sqrtl linkage""... $ac_c" 1>&6 ! echo "configure:5670: checking for __builtin_sqrtl linkage" >&5 if test x${glibcpp_cv_func___builtin_sqrtl_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_sqrtl_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_sqrtl(0); ; return 0; } EOF ! if { (eval echo configure:5684: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_sqrtl_link=yes else *************** EOF *** 5712,5718 **** echo $ac_n "checking for __builtin_sinf declaration""... $ac_c" 1>&6 ! echo "configure:5716: checking for __builtin_sinf declaration" >&5 if test x${glibcpp_cv_func___builtin_sinf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_sinf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 5707,5713 ---- echo $ac_n "checking for __builtin_sinf declaration""... $ac_c" 1>&6 ! echo "configure:5711: checking for __builtin_sinf declaration" >&5 if test x${glibcpp_cv_func___builtin_sinf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_sinf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 5727,5740 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_sinf(0); ; return 0; } EOF ! if { (eval echo configure:5738: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_sinf_use=yes else --- 5722,5735 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_sinf(0); ; return 0; } EOF ! if { (eval echo configure:5733: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_sinf_use=yes else *************** fi *** 5758,5778 **** echo "$ac_t""$glibcpp_cv_func___builtin_sinf_use" 1>&6 if test x$glibcpp_cv_func___builtin_sinf_use = x"yes"; then echo $ac_n "checking for __builtin_sinf linkage""... $ac_c" 1>&6 ! echo "configure:5762: checking for __builtin_sinf linkage" >&5 if test x${glibcpp_cv_func___builtin_sinf_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_sinf_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_sinf(0); ; return 0; } EOF ! if { (eval echo configure:5776: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_sinf_link=yes else --- 5753,5773 ---- echo "$ac_t""$glibcpp_cv_func___builtin_sinf_use" 1>&6 if test x$glibcpp_cv_func___builtin_sinf_use = x"yes"; then echo $ac_n "checking for __builtin_sinf linkage""... $ac_c" 1>&6 ! echo "configure:5757: checking for __builtin_sinf linkage" >&5 if test x${glibcpp_cv_func___builtin_sinf_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_sinf_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_sinf(0); ; return 0; } EOF ! if { (eval echo configure:5771: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_sinf_link=yes else *************** EOF *** 5798,5804 **** echo $ac_n "checking for __builtin_sin declaration""... $ac_c" 1>&6 ! echo "configure:5802: checking for __builtin_sin declaration" >&5 if test x${glibcpp_cv_func___builtin_sin_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_sin_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 5793,5799 ---- echo $ac_n "checking for __builtin_sin declaration""... $ac_c" 1>&6 ! echo "configure:5797: checking for __builtin_sin declaration" >&5 if test x${glibcpp_cv_func___builtin_sin_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_sin_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 5813,5826 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_sin(0); ; return 0; } EOF ! if { (eval echo configure:5824: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_sin_use=yes else --- 5808,5821 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_sin(0); ; return 0; } EOF ! if { (eval echo configure:5819: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_sin_use=yes else *************** fi *** 5844,5864 **** echo "$ac_t""$glibcpp_cv_func___builtin_sin_use" 1>&6 if test x$glibcpp_cv_func___builtin_sin_use = x"yes"; then echo $ac_n "checking for __builtin_sin linkage""... $ac_c" 1>&6 ! echo "configure:5848: checking for __builtin_sin linkage" >&5 if test x${glibcpp_cv_func___builtin_sin_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_sin_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_sin(0); ; return 0; } EOF ! if { (eval echo configure:5862: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_sin_link=yes else --- 5839,5859 ---- echo "$ac_t""$glibcpp_cv_func___builtin_sin_use" 1>&6 if test x$glibcpp_cv_func___builtin_sin_use = x"yes"; then echo $ac_n "checking for __builtin_sin linkage""... $ac_c" 1>&6 ! echo "configure:5843: checking for __builtin_sin linkage" >&5 if test x${glibcpp_cv_func___builtin_sin_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_sin_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_sin(0); ; return 0; } EOF ! if { (eval echo configure:5857: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_sin_link=yes else *************** EOF *** 5884,5890 **** echo $ac_n "checking for __builtin_sinl declaration""... $ac_c" 1>&6 ! echo "configure:5888: checking for __builtin_sinl declaration" >&5 if test x${glibcpp_cv_func___builtin_sinl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_sinl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 5879,5885 ---- echo $ac_n "checking for __builtin_sinl declaration""... $ac_c" 1>&6 ! echo "configure:5883: checking for __builtin_sinl declaration" >&5 if test x${glibcpp_cv_func___builtin_sinl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_sinl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 5899,5912 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_sinl(0); ; return 0; } EOF ! if { (eval echo configure:5910: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_sinl_use=yes else --- 5894,5907 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_sinl(0); ; return 0; } EOF ! if { (eval echo configure:5905: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_sinl_use=yes else *************** fi *** 5930,5950 **** echo "$ac_t""$glibcpp_cv_func___builtin_sinl_use" 1>&6 if test x$glibcpp_cv_func___builtin_sinl_use = x"yes"; then echo $ac_n "checking for __builtin_sinl linkage""... $ac_c" 1>&6 ! echo "configure:5934: checking for __builtin_sinl linkage" >&5 if test x${glibcpp_cv_func___builtin_sinl_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_sinl_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_sinl(0); ; return 0; } EOF ! if { (eval echo configure:5948: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_sinl_link=yes else --- 5925,5945 ---- echo "$ac_t""$glibcpp_cv_func___builtin_sinl_use" 1>&6 if test x$glibcpp_cv_func___builtin_sinl_use = x"yes"; then echo $ac_n "checking for __builtin_sinl linkage""... $ac_c" 1>&6 ! echo "configure:5929: checking for __builtin_sinl linkage" >&5 if test x${glibcpp_cv_func___builtin_sinl_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_sinl_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_sinl(0); ; return 0; } EOF ! if { (eval echo configure:5943: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_sinl_link=yes else *************** EOF *** 5971,5977 **** echo $ac_n "checking for __builtin_cosf declaration""... $ac_c" 1>&6 ! echo "configure:5975: checking for __builtin_cosf declaration" >&5 if test x${glibcpp_cv_func___builtin_cosf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_cosf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 5966,5972 ---- echo $ac_n "checking for __builtin_cosf declaration""... $ac_c" 1>&6 ! echo "configure:5970: checking for __builtin_cosf declaration" >&5 if test x${glibcpp_cv_func___builtin_cosf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_cosf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 5986,5999 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_cosf(0); ; return 0; } EOF ! if { (eval echo configure:5997: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_cosf_use=yes else --- 5981,5994 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_cosf(0); ; return 0; } EOF ! if { (eval echo configure:5992: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_cosf_use=yes else *************** fi *** 6017,6037 **** echo "$ac_t""$glibcpp_cv_func___builtin_cosf_use" 1>&6 if test x$glibcpp_cv_func___builtin_cosf_use = x"yes"; then echo $ac_n "checking for __builtin_cosf linkage""... $ac_c" 1>&6 ! echo "configure:6021: checking for __builtin_cosf linkage" >&5 if test x${glibcpp_cv_func___builtin_cosf_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_cosf_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_cosf(0); ; return 0; } EOF ! if { (eval echo configure:6035: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_cosf_link=yes else --- 6012,6032 ---- echo "$ac_t""$glibcpp_cv_func___builtin_cosf_use" 1>&6 if test x$glibcpp_cv_func___builtin_cosf_use = x"yes"; then echo $ac_n "checking for __builtin_cosf linkage""... $ac_c" 1>&6 ! echo "configure:6016: checking for __builtin_cosf linkage" >&5 if test x${glibcpp_cv_func___builtin_cosf_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_cosf_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_cosf(0); ; return 0; } EOF ! if { (eval echo configure:6030: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_cosf_link=yes else *************** EOF *** 6057,6063 **** echo $ac_n "checking for __builtin_cos declaration""... $ac_c" 1>&6 ! echo "configure:6061: checking for __builtin_cos declaration" >&5 if test x${glibcpp_cv_func___builtin_cos_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_cos_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 6052,6058 ---- echo $ac_n "checking for __builtin_cos declaration""... $ac_c" 1>&6 ! echo "configure:6056: checking for __builtin_cos declaration" >&5 if test x${glibcpp_cv_func___builtin_cos_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_cos_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 6072,6085 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_cos(0); ; return 0; } EOF ! if { (eval echo configure:6083: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_cos_use=yes else --- 6067,6080 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_cos(0); ; return 0; } EOF ! if { (eval echo configure:6078: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_cos_use=yes else *************** fi *** 6103,6123 **** echo "$ac_t""$glibcpp_cv_func___builtin_cos_use" 1>&6 if test x$glibcpp_cv_func___builtin_cos_use = x"yes"; then echo $ac_n "checking for __builtin_cos linkage""... $ac_c" 1>&6 ! echo "configure:6107: checking for __builtin_cos linkage" >&5 if test x${glibcpp_cv_func___builtin_cos_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_cos_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_cos(0); ; return 0; } EOF ! if { (eval echo configure:6121: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_cos_link=yes else --- 6098,6118 ---- echo "$ac_t""$glibcpp_cv_func___builtin_cos_use" 1>&6 if test x$glibcpp_cv_func___builtin_cos_use = x"yes"; then echo $ac_n "checking for __builtin_cos linkage""... $ac_c" 1>&6 ! echo "configure:6102: checking for __builtin_cos linkage" >&5 if test x${glibcpp_cv_func___builtin_cos_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_cos_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_cos(0); ; return 0; } EOF ! if { (eval echo configure:6116: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_cos_link=yes else *************** EOF *** 6143,6149 **** echo $ac_n "checking for __builtin_cosl declaration""... $ac_c" 1>&6 ! echo "configure:6147: checking for __builtin_cosl declaration" >&5 if test x${glibcpp_cv_func___builtin_cosl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_cosl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 6138,6144 ---- echo $ac_n "checking for __builtin_cosl declaration""... $ac_c" 1>&6 ! echo "configure:6142: checking for __builtin_cosl declaration" >&5 if test x${glibcpp_cv_func___builtin_cosl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_cosl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 6158,6171 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_cosl(0); ; return 0; } EOF ! if { (eval echo configure:6169: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_cosl_use=yes else --- 6153,6166 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { __builtin_cosl(0); ; return 0; } EOF ! if { (eval echo configure:6164: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func___builtin_cosl_use=yes else *************** fi *** 6189,6209 **** echo "$ac_t""$glibcpp_cv_func___builtin_cosl_use" 1>&6 if test x$glibcpp_cv_func___builtin_cosl_use = x"yes"; then echo $ac_n "checking for __builtin_cosl linkage""... $ac_c" 1>&6 ! echo "configure:6193: checking for __builtin_cosl linkage" >&5 if test x${glibcpp_cv_func___builtin_cosl_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_cosl_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_cosl(0); ; return 0; } EOF ! if { (eval echo configure:6207: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_cosl_link=yes else --- 6184,6204 ---- echo "$ac_t""$glibcpp_cv_func___builtin_cosl_use" 1>&6 if test x$glibcpp_cv_func___builtin_cosl_use = x"yes"; then echo $ac_n "checking for __builtin_cosl linkage""... $ac_c" 1>&6 ! echo "configure:6188: checking for __builtin_cosl linkage" >&5 if test x${glibcpp_cv_func___builtin_cosl_link+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func___builtin_cosl_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { __builtin_cosl(0); ; return 0; } EOF ! if { (eval echo configure:6202: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* glibcpp_cv_func___builtin_cosl_link=yes else *************** EOF *** 6294,6300 **** CXXFLAGS='-fno-builtins -D_GNU_SOURCE' echo $ac_n "checking for sin in -lm""... $ac_c" 1>&6 ! echo "configure:6298: checking for sin in -lm" >&5 ac_lib_var=`echo m'_'sin | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 6289,6295 ---- CXXFLAGS='-fno-builtins -D_GNU_SOURCE' echo $ac_n "checking for sin in -lm""... $ac_c" 1>&6 ! echo "configure:6293: checking for sin in -lm" >&5 ac_lib_var=`echo m'_'sin | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** else *** 6302,6308 **** ac_save_LIBS="$LIBS" LIBS="-lm $LIBS" cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else --- 6308,6314 ---- sin() ; return 0; } EOF ! if { (eval echo configure:6312: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else *************** fi *** 6339,6345 **** echo $ac_n "checking for isinf declaration""... $ac_c" 1>&6 ! echo "configure:6343: checking for isinf declaration" >&5 if test x${glibcpp_cv_func_isinf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_isinf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 6334,6340 ---- echo $ac_n "checking for isinf declaration""... $ac_c" 1>&6 ! echo "configure:6338: checking for isinf declaration" >&5 if test x${glibcpp_cv_func_isinf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_isinf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 6354,6360 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 6349,6355 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 6365,6371 **** isinf(0); ; return 0; } EOF ! if { (eval echo configure:6369: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_isinf_use=yes else --- 6360,6366 ---- isinf(0); ; return 0; } EOF ! if { (eval echo configure:6364: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_isinf_use=yes else *************** fi *** 6392,6403 **** for ac_func in isinf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:6396: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:6391: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 6415,6421 ---- ; return 0; } EOF ! if { (eval echo configure:6419: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 6447,6453 **** else echo $ac_n "checking for _isinf declaration""... $ac_c" 1>&6 ! echo "configure:6451: checking for _isinf declaration" >&5 if test x${glibcpp_cv_func__isinf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__isinf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 6442,6448 ---- else echo $ac_n "checking for _isinf declaration""... $ac_c" 1>&6 ! echo "configure:6446: checking for _isinf declaration" >&5 if test x${glibcpp_cv_func__isinf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__isinf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 6462,6468 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 6457,6463 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 6473,6479 **** _isinf(0); ; return 0; } EOF ! if { (eval echo configure:6477: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__isinf_use=yes else --- 6468,6474 ---- _isinf(0); ; return 0; } EOF ! if { (eval echo configure:6472: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__isinf_use=yes else *************** fi *** 6500,6511 **** for ac_func in _isinf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:6504: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:6499: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 6523,6529 ---- ; return 0; } EOF ! if { (eval echo configure:6527: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 6558,6564 **** echo $ac_n "checking for isnan declaration""... $ac_c" 1>&6 ! echo "configure:6562: checking for isnan declaration" >&5 if test x${glibcpp_cv_func_isnan_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_isnan_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 6553,6559 ---- echo $ac_n "checking for isnan declaration""... $ac_c" 1>&6 ! echo "configure:6557: checking for isnan declaration" >&5 if test x${glibcpp_cv_func_isnan_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_isnan_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 6573,6579 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 6568,6574 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 6584,6590 **** isnan(0); ; return 0; } EOF ! if { (eval echo configure:6588: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_isnan_use=yes else --- 6579,6585 ---- isnan(0); ; return 0; } EOF ! if { (eval echo configure:6583: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_isnan_use=yes else *************** fi *** 6611,6622 **** for ac_func in isnan do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:6615: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:6610: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 6634,6640 ---- ; return 0; } EOF ! if { (eval echo configure:6638: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 6666,6672 **** else echo $ac_n "checking for _isnan declaration""... $ac_c" 1>&6 ! echo "configure:6670: checking for _isnan declaration" >&5 if test x${glibcpp_cv_func__isnan_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__isnan_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 6661,6667 ---- else echo $ac_n "checking for _isnan declaration""... $ac_c" 1>&6 ! echo "configure:6665: checking for _isnan declaration" >&5 if test x${glibcpp_cv_func__isnan_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__isnan_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 6681,6687 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 6676,6682 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 6692,6698 **** _isnan(0); ; return 0; } EOF ! if { (eval echo configure:6696: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__isnan_use=yes else --- 6687,6693 ---- _isnan(0); ; return 0; } EOF ! if { (eval echo configure:6691: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__isnan_use=yes else *************** fi *** 6719,6730 **** for ac_func in _isnan do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:6723: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:6718: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 6742,6748 ---- ; return 0; } EOF ! if { (eval echo configure:6746: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 6777,6783 **** echo $ac_n "checking for finite declaration""... $ac_c" 1>&6 ! echo "configure:6781: checking for finite declaration" >&5 if test x${glibcpp_cv_func_finite_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_finite_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 6772,6778 ---- echo $ac_n "checking for finite declaration""... $ac_c" 1>&6 ! echo "configure:6776: checking for finite declaration" >&5 if test x${glibcpp_cv_func_finite_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_finite_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 6792,6798 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 6787,6793 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 6803,6809 **** finite(0); ; return 0; } EOF ! if { (eval echo configure:6807: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_finite_use=yes else --- 6798,6804 ---- finite(0); ; return 0; } EOF ! if { (eval echo configure:6802: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_finite_use=yes else *************** fi *** 6830,6841 **** for ac_func in finite do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:6834: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:6829: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 6853,6859 ---- ; return 0; } EOF ! if { (eval echo configure:6857: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 6885,6891 **** else echo $ac_n "checking for _finite declaration""... $ac_c" 1>&6 ! echo "configure:6889: checking for _finite declaration" >&5 if test x${glibcpp_cv_func__finite_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__finite_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 6880,6886 ---- else echo $ac_n "checking for _finite declaration""... $ac_c" 1>&6 ! echo "configure:6884: checking for _finite declaration" >&5 if test x${glibcpp_cv_func__finite_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__finite_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 6900,6906 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 6895,6901 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 6911,6917 **** _finite(0); ; return 0; } EOF ! if { (eval echo configure:6915: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__finite_use=yes else --- 6906,6912 ---- _finite(0); ; return 0; } EOF ! if { (eval echo configure:6910: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__finite_use=yes else *************** fi *** 6938,6949 **** for ac_func in _finite do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:6942: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:6937: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 6961,6967 ---- ; return 0; } EOF ! if { (eval echo configure:6965: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 6996,7002 **** echo $ac_n "checking for copysign declaration""... $ac_c" 1>&6 ! echo "configure:7000: checking for copysign declaration" >&5 if test x${glibcpp_cv_func_copysign_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_copysign_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 6991,6997 ---- echo $ac_n "checking for copysign declaration""... $ac_c" 1>&6 ! echo "configure:6995: checking for copysign declaration" >&5 if test x${glibcpp_cv_func_copysign_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_copysign_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 7011,7024 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { copysign(0, 0); ; return 0; } EOF ! if { (eval echo configure:7022: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_copysign_use=yes else --- 7006,7019 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { copysign(0, 0); ; return 0; } EOF ! if { (eval echo configure:7017: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_copysign_use=yes else *************** fi *** 7045,7056 **** for ac_func in copysign do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:7049: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:7044: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 7068,7074 ---- ; return 0; } EOF ! if { (eval echo configure:7072: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 7100,7106 **** else echo $ac_n "checking for _copysign declaration""... $ac_c" 1>&6 ! echo "configure:7104: checking for _copysign declaration" >&5 if test x${glibcpp_cv_func__copysign_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__copysign_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 7095,7101 ---- else echo $ac_n "checking for _copysign declaration""... $ac_c" 1>&6 ! echo "configure:7099: checking for _copysign declaration" >&5 if test x${glibcpp_cv_func__copysign_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__copysign_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 7115,7128 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _copysign(0, 0); ; return 0; } EOF ! if { (eval echo configure:7126: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__copysign_use=yes else --- 7110,7123 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _copysign(0, 0); ; return 0; } EOF ! if { (eval echo configure:7121: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__copysign_use=yes else *************** fi *** 7149,7160 **** for ac_func in _copysign do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:7153: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:7148: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 7172,7178 ---- ; return 0; } EOF ! if { (eval echo configure:7176: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 7207,7213 **** echo $ac_n "checking for sincos declaration""... $ac_c" 1>&6 ! echo "configure:7211: checking for sincos declaration" >&5 if test x${glibcpp_cv_func_sincos_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_sincos_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 7202,7208 ---- echo $ac_n "checking for sincos declaration""... $ac_c" 1>&6 ! echo "configure:7206: checking for sincos declaration" >&5 if test x${glibcpp_cv_func_sincos_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_sincos_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 7222,7235 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { sincos(0, 0, 0); ; return 0; } EOF ! if { (eval echo configure:7233: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_sincos_use=yes else --- 7217,7230 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { sincos(0, 0, 0); ; return 0; } EOF ! if { (eval echo configure:7228: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_sincos_use=yes else *************** fi *** 7256,7267 **** for ac_func in sincos do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:7260: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:7255: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 7279,7285 ---- ; return 0; } EOF ! if { (eval echo configure:7283: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 7311,7317 **** else echo $ac_n "checking for _sincos declaration""... $ac_c" 1>&6 ! echo "configure:7315: checking for _sincos declaration" >&5 if test x${glibcpp_cv_func__sincos_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__sincos_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 7306,7312 ---- else echo $ac_n "checking for _sincos declaration""... $ac_c" 1>&6 ! echo "configure:7310: checking for _sincos declaration" >&5 if test x${glibcpp_cv_func__sincos_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__sincos_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 7326,7339 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _sincos(0, 0, 0); ; return 0; } EOF ! if { (eval echo configure:7337: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__sincos_use=yes else --- 7321,7334 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _sincos(0, 0, 0); ; return 0; } EOF ! if { (eval echo configure:7332: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__sincos_use=yes else *************** fi *** 7360,7371 **** for ac_func in _sincos do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:7364: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:7359: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 7383,7389 ---- ; return 0; } EOF ! if { (eval echo configure:7387: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 7418,7424 **** echo $ac_n "checking for fpclass declaration""... $ac_c" 1>&6 ! echo "configure:7422: checking for fpclass declaration" >&5 if test x${glibcpp_cv_func_fpclass_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_fpclass_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 7413,7419 ---- echo $ac_n "checking for fpclass declaration""... $ac_c" 1>&6 ! echo "configure:7417: checking for fpclass declaration" >&5 if test x${glibcpp_cv_func_fpclass_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_fpclass_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 7433,7439 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 7428,7434 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 7444,7450 **** fpclass(0); ; return 0; } EOF ! if { (eval echo configure:7448: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_fpclass_use=yes else --- 7439,7445 ---- fpclass(0); ; return 0; } EOF ! if { (eval echo configure:7443: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_fpclass_use=yes else *************** fi *** 7471,7482 **** for ac_func in fpclass do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:7475: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:7470: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 7494,7500 ---- ; return 0; } EOF ! if { (eval echo configure:7498: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 7526,7532 **** else echo $ac_n "checking for _fpclass declaration""... $ac_c" 1>&6 ! echo "configure:7530: checking for _fpclass declaration" >&5 if test x${glibcpp_cv_func__fpclass_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__fpclass_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 7521,7527 ---- else echo $ac_n "checking for _fpclass declaration""... $ac_c" 1>&6 ! echo "configure:7525: checking for _fpclass declaration" >&5 if test x${glibcpp_cv_func__fpclass_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__fpclass_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 7541,7547 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 7536,7542 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 7552,7558 **** _fpclass(0); ; return 0; } EOF ! if { (eval echo configure:7556: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__fpclass_use=yes else --- 7547,7553 ---- _fpclass(0); ; return 0; } EOF ! if { (eval echo configure:7551: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__fpclass_use=yes else *************** fi *** 7579,7590 **** for ac_func in _fpclass do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:7583: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:7578: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 7602,7608 ---- ; return 0; } EOF ! if { (eval echo configure:7606: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 7637,7643 **** echo $ac_n "checking for qfpclass declaration""... $ac_c" 1>&6 ! echo "configure:7641: checking for qfpclass declaration" >&5 if test x${glibcpp_cv_func_qfpclass_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_qfpclass_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 7632,7638 ---- echo $ac_n "checking for qfpclass declaration""... $ac_c" 1>&6 ! echo "configure:7636: checking for qfpclass declaration" >&5 if test x${glibcpp_cv_func_qfpclass_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_qfpclass_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 7652,7658 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 7647,7653 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 7663,7669 **** qfpclass(0); ; return 0; } EOF ! if { (eval echo configure:7667: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_qfpclass_use=yes else --- 7658,7664 ---- qfpclass(0); ; return 0; } EOF ! if { (eval echo configure:7662: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_qfpclass_use=yes else *************** fi *** 7690,7701 **** for ac_func in qfpclass do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:7694: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:7689: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 7713,7719 ---- ; return 0; } EOF ! if { (eval echo configure:7717: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 7745,7751 **** else echo $ac_n "checking for _qfpclass declaration""... $ac_c" 1>&6 ! echo "configure:7749: checking for _qfpclass declaration" >&5 if test x${glibcpp_cv_func__qfpclass_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__qfpclass_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 7740,7746 ---- else echo $ac_n "checking for _qfpclass declaration""... $ac_c" 1>&6 ! echo "configure:7744: checking for _qfpclass declaration" >&5 if test x${glibcpp_cv_func__qfpclass_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__qfpclass_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 7760,7766 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 7755,7761 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 7771,7777 **** _qfpclass(0); ; return 0; } EOF ! if { (eval echo configure:7775: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__qfpclass_use=yes else --- 7766,7772 ---- _qfpclass(0); ; return 0; } EOF ! if { (eval echo configure:7770: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__qfpclass_use=yes else *************** fi *** 7798,7809 **** for ac_func in _qfpclass do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:7802: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:7797: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 7821,8038 ---- ; return 0; } EOF ! if { (eval echo configure:7825: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ! rm -rf conftest* ! eval "ac_cv_func_$ac_func=yes" ! else ! echo "configure: failed program was:" >&5 ! cat conftest.$ac_ext >&5 ! rm -rf conftest* ! eval "ac_cv_func_$ac_func=no" ! fi ! rm -f conftest* ! fi ! ! if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then ! echo "$ac_t""yes" 1>&6 ! ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` ! cat >> confdefs.h <&6 ! fi ! done ! ! fi ! fi ! ! ! ! echo $ac_n "checking for hypot declaration""... $ac_c" 1>&6 ! echo "configure:7855: checking for hypot declaration" >&5 ! if test x${glibcpp_cv_func_hypot_use+set} != xset; then ! if eval "test \"`echo '$''{'glibcpp_cv_func_hypot_use'+set}'`\" = set"; then ! echo $ac_n "(cached) $ac_c" 1>&6 ! else ! ! ! ac_ext=C ! # CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. ! ac_cpp='$CXXCPP $CPPFLAGS' ! ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' ! ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' ! cross_compiling=$ac_cv_prog_cxx_cross ! ! cat > conftest.$ac_ext < ! int main() { ! hypot(0, 0); ! ; return 0; } ! EOF ! if { (eval echo configure:7877: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then ! rm -rf conftest* ! glibcpp_cv_func_hypot_use=yes ! else ! echo "configure: failed program was:" >&5 ! cat conftest.$ac_ext >&5 ! rm -rf conftest* ! glibcpp_cv_func_hypot_use=no ! fi ! rm -f conftest* ! ac_ext=c ! # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. ! ac_cpp='$CPP $CPPFLAGS' ! ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' ! ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' ! cross_compiling=$ac_cv_prog_cc_cross ! ! ! fi ! ! fi ! echo "$ac_t""$glibcpp_cv_func_hypot_use" 1>&6 ! ! if test x$glibcpp_cv_func_hypot_use = x"yes"; then ! for ac_func in hypot ! do ! echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:7904: checking for $ac_func" >&5 ! if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then ! echo $ac_n "(cached) $ac_c" 1>&6 ! else ! cat > conftest.$ac_ext < ! /* Override any gcc2 internal prototype to avoid an error. */ ! /* We use char because int might match the return type of a gcc2 ! builtin and then its argument prototype would still apply. */ ! char $ac_func(); ! ! int main() { ! ! /* The GNU C library defines this for functions which it implements ! to always fail with ENOSYS. Some functions are actually named ! something starting with __ and the normal name is an alias. */ ! #if defined (__stub_$ac_func) || defined (__stub___$ac_func) ! choke me ! #else ! $ac_func(); ! #endif ! ! ; return 0; } ! EOF ! if { (eval echo configure:7932: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ! rm -rf conftest* ! eval "ac_cv_func_$ac_func=yes" ! else ! echo "configure: failed program was:" >&5 ! cat conftest.$ac_ext >&5 ! rm -rf conftest* ! eval "ac_cv_func_$ac_func=no" ! fi ! rm -f conftest* ! fi ! ! if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then ! echo "$ac_t""yes" 1>&6 ! ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` ! cat >> confdefs.h <&6 ! fi ! done ! ! else ! ! echo $ac_n "checking for _hypot declaration""... $ac_c" 1>&6 ! echo "configure:7959: checking for _hypot declaration" >&5 ! if test x${glibcpp_cv_func__hypot_use+set} != xset; then ! if eval "test \"`echo '$''{'glibcpp_cv_func__hypot_use'+set}'`\" = set"; then ! echo $ac_n "(cached) $ac_c" 1>&6 ! else ! ! ! ac_ext=C ! # CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. ! ac_cpp='$CXXCPP $CPPFLAGS' ! ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' ! ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' ! cross_compiling=$ac_cv_prog_cxx_cross ! ! cat > conftest.$ac_ext < ! int main() { ! _hypot(0, 0); ! ; return 0; } ! EOF ! if { (eval echo configure:7981: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then ! rm -rf conftest* ! glibcpp_cv_func__hypot_use=yes ! else ! echo "configure: failed program was:" >&5 ! cat conftest.$ac_ext >&5 ! rm -rf conftest* ! glibcpp_cv_func__hypot_use=no ! fi ! rm -f conftest* ! ac_ext=c ! # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. ! ac_cpp='$CPP $CPPFLAGS' ! ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' ! ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' ! cross_compiling=$ac_cv_prog_cc_cross ! ! ! fi ! ! fi ! echo "$ac_t""$glibcpp_cv_func__hypot_use" 1>&6 ! ! if test x$glibcpp_cv_func__hypot_use = x"yes"; then ! for ac_func in _hypot ! do ! echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:8008: checking for $ac_func" >&5 ! if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then ! echo $ac_n "(cached) $ac_c" 1>&6 ! else ! cat > conftest.$ac_ext < ! /* Override any gcc2 internal prototype to avoid an error. */ ! /* We use char because int might match the return type of a gcc2 ! builtin and then its argument prototype would still apply. */ ! char $ac_func(); ! ! int main() { ! ! /* The GNU C library defines this for functions which it implements ! to always fail with ENOSYS. Some functions are actually named ! something starting with __ and the normal name is an alias. */ ! #if defined (__stub_$ac_func) || defined (__stub___$ac_func) ! choke me ! #else ! $ac_func(); ! #endif ! ! ; return 0; } ! EOF ! if { (eval echo configure:8036: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 7856,7862 **** echo $ac_n "checking for float trig functions""... $ac_c" 1>&6 ! echo "configure:7860: checking for float trig functions" >&5 if eval "test \"`echo '$''{'glibcpp_cv_func_float_trig_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 8062,8068 ---- echo $ac_n "checking for float trig functions""... $ac_c" 1>&6 ! echo "configure:8066: checking for float trig functions" >&5 if eval "test \"`echo '$''{'glibcpp_cv_func_float_trig_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 7870,7876 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { --- 8076,8082 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { *************** int main() { *** 7879,7885 **** coshf sinhf tanhf; do echo "$x (0);"; done` ; return 0; } EOF ! if { (eval echo configure:7883: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_float_trig_use=yes else --- 8085,8091 ---- coshf sinhf tanhf; do echo "$x (0);"; done` ; return 0; } EOF ! if { (eval echo configure:8089: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_float_trig_use=yes else *************** fi *** 7905,7916 **** coshf sinhf tanhf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:7909: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:8115: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 8139,8145 ---- ; return 0; } EOF ! if { (eval echo configure:8143: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 7961,7967 **** echo $ac_n "checking for float round functions""... $ac_c" 1>&6 ! echo "configure:7965: checking for float round functions" >&5 if eval "test \"`echo '$''{'glibcpp_cv_func_float_round_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 8167,8173 ---- echo $ac_n "checking for float round functions""... $ac_c" 1>&6 ! echo "configure:8171: checking for float round functions" >&5 if eval "test \"`echo '$''{'glibcpp_cv_func_float_round_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 7975,7988 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { `for x in ceilf floorf; do echo "$x (0);"; done` ; return 0; } EOF ! if { (eval echo configure:7986: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_float_round_use=yes else --- 8181,8194 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { `for x in ceilf floorf; do echo "$x (0);"; done` ; return 0; } EOF ! if { (eval echo configure:8192: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_float_round_use=yes else *************** fi *** 8006,8017 **** for ac_func in ceilf floorf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:8010: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:8216: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 8240,8246 ---- ; return 0; } EOF ! if { (eval echo configure:8244: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 8063,8069 **** echo $ac_n "checking for isnanf declaration""... $ac_c" 1>&6 ! echo "configure:8067: checking for isnanf declaration" >&5 if test x${glibcpp_cv_func_isnanf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_isnanf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 8269,8275 ---- echo $ac_n "checking for isnanf declaration""... $ac_c" 1>&6 ! echo "configure:8273: checking for isnanf declaration" >&5 if test x${glibcpp_cv_func_isnanf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_isnanf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 8078,8084 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 8284,8290 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 8089,8095 **** isnanf(0); ; return 0; } EOF ! if { (eval echo configure:8093: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_isnanf_use=yes else --- 8295,8301 ---- isnanf(0); ; return 0; } EOF ! if { (eval echo configure:8299: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_isnanf_use=yes else *************** fi *** 8116,8127 **** for ac_func in isnanf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:8120: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:8326: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 8350,8356 ---- ; return 0; } EOF ! if { (eval echo configure:8354: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 8171,8177 **** else echo $ac_n "checking for _isnanf declaration""... $ac_c" 1>&6 ! echo "configure:8175: checking for _isnanf declaration" >&5 if test x${glibcpp_cv_func__isnanf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__isnanf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 8377,8383 ---- else echo $ac_n "checking for _isnanf declaration""... $ac_c" 1>&6 ! echo "configure:8381: checking for _isnanf declaration" >&5 if test x${glibcpp_cv_func__isnanf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__isnanf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 8186,8192 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 8392,8398 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 8197,8203 **** _isnanf(0); ; return 0; } EOF ! if { (eval echo configure:8201: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__isnanf_use=yes else --- 8403,8409 ---- _isnanf(0); ; return 0; } EOF ! if { (eval echo configure:8407: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__isnanf_use=yes else *************** fi *** 8224,8235 **** for ac_func in _isnanf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:8228: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:8434: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 8458,8464 ---- ; return 0; } EOF ! if { (eval echo configure:8462: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 8282,8288 **** echo $ac_n "checking for isinff declaration""... $ac_c" 1>&6 ! echo "configure:8286: checking for isinff declaration" >&5 if test x${glibcpp_cv_func_isinff_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_isinff_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 8488,8494 ---- echo $ac_n "checking for isinff declaration""... $ac_c" 1>&6 ! echo "configure:8492: checking for isinff declaration" >&5 if test x${glibcpp_cv_func_isinff_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_isinff_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 8297,8303 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 8503,8509 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 8308,8314 **** isinff(0); ; return 0; } EOF ! if { (eval echo configure:8312: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_isinff_use=yes else --- 8514,8520 ---- isinff(0); ; return 0; } EOF ! if { (eval echo configure:8518: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_isinff_use=yes else *************** fi *** 8335,8346 **** for ac_func in isinff do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:8339: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:8545: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 8569,8575 ---- ; return 0; } EOF ! if { (eval echo configure:8573: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 8390,8396 **** else echo $ac_n "checking for _isinff declaration""... $ac_c" 1>&6 ! echo "configure:8394: checking for _isinff declaration" >&5 if test x${glibcpp_cv_func__isinff_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__isinff_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 8596,8602 ---- else echo $ac_n "checking for _isinff declaration""... $ac_c" 1>&6 ! echo "configure:8600: checking for _isinff declaration" >&5 if test x${glibcpp_cv_func__isinff_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__isinff_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 8405,8411 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 8611,8617 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 8416,8422 **** _isinff(0); ; return 0; } EOF ! if { (eval echo configure:8420: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__isinff_use=yes else --- 8622,8628 ---- _isinff(0); ; return 0; } EOF ! if { (eval echo configure:8626: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__isinff_use=yes else *************** fi *** 8443,8454 **** for ac_func in _isinff do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:8447: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:8653: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 8677,8894 ---- ; return 0; } EOF ! if { (eval echo configure:8681: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ! rm -rf conftest* ! eval "ac_cv_func_$ac_func=yes" ! else ! echo "configure: failed program was:" >&5 ! cat conftest.$ac_ext >&5 ! rm -rf conftest* ! eval "ac_cv_func_$ac_func=no" ! fi ! rm -f conftest* ! fi ! ! if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then ! echo "$ac_t""yes" 1>&6 ! ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` ! cat >> confdefs.h <&6 ! fi ! done ! ! fi ! fi ! ! ! ! echo $ac_n "checking for atan2f declaration""... $ac_c" 1>&6 ! echo "configure:8711: checking for atan2f declaration" >&5 ! if test x${glibcpp_cv_func_atan2f_use+set} != xset; then ! if eval "test \"`echo '$''{'glibcpp_cv_func_atan2f_use'+set}'`\" = set"; then ! echo $ac_n "(cached) $ac_c" 1>&6 ! else ! ! ! ac_ext=C ! # CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. ! ac_cpp='$CXXCPP $CPPFLAGS' ! ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' ! ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' ! cross_compiling=$ac_cv_prog_cxx_cross ! ! cat > conftest.$ac_ext < ! int main() { ! atan2f(0, 0); ! ; return 0; } ! EOF ! if { (eval echo configure:8733: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then ! rm -rf conftest* ! glibcpp_cv_func_atan2f_use=yes ! else ! echo "configure: failed program was:" >&5 ! cat conftest.$ac_ext >&5 ! rm -rf conftest* ! glibcpp_cv_func_atan2f_use=no ! fi ! rm -f conftest* ! ac_ext=c ! # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. ! ac_cpp='$CPP $CPPFLAGS' ! ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' ! ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' ! cross_compiling=$ac_cv_prog_cc_cross ! ! ! fi ! ! fi ! echo "$ac_t""$glibcpp_cv_func_atan2f_use" 1>&6 ! ! if test x$glibcpp_cv_func_atan2f_use = x"yes"; then ! for ac_func in atan2f ! do ! echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:8760: checking for $ac_func" >&5 ! if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then ! echo $ac_n "(cached) $ac_c" 1>&6 ! else ! cat > conftest.$ac_ext < ! /* Override any gcc2 internal prototype to avoid an error. */ ! /* We use char because int might match the return type of a gcc2 ! builtin and then its argument prototype would still apply. */ ! char $ac_func(); ! ! int main() { ! ! /* The GNU C library defines this for functions which it implements ! to always fail with ENOSYS. Some functions are actually named ! something starting with __ and the normal name is an alias. */ ! #if defined (__stub_$ac_func) || defined (__stub___$ac_func) ! choke me ! #else ! $ac_func(); ! #endif ! ! ; return 0; } ! EOF ! if { (eval echo configure:8788: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ! rm -rf conftest* ! eval "ac_cv_func_$ac_func=yes" ! else ! echo "configure: failed program was:" >&5 ! cat conftest.$ac_ext >&5 ! rm -rf conftest* ! eval "ac_cv_func_$ac_func=no" ! fi ! rm -f conftest* ! fi ! ! if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then ! echo "$ac_t""yes" 1>&6 ! ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` ! cat >> confdefs.h <&6 ! fi ! done ! ! else ! ! echo $ac_n "checking for _atan2f declaration""... $ac_c" 1>&6 ! echo "configure:8815: checking for _atan2f declaration" >&5 ! if test x${glibcpp_cv_func__atan2f_use+set} != xset; then ! if eval "test \"`echo '$''{'glibcpp_cv_func__atan2f_use'+set}'`\" = set"; then ! echo $ac_n "(cached) $ac_c" 1>&6 ! else ! ! ! ac_ext=C ! # CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. ! ac_cpp='$CXXCPP $CPPFLAGS' ! ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' ! ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' ! cross_compiling=$ac_cv_prog_cxx_cross ! ! cat > conftest.$ac_ext < ! int main() { ! _atan2f(0, 0); ! ; return 0; } ! EOF ! if { (eval echo configure:8837: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then ! rm -rf conftest* ! glibcpp_cv_func__atan2f_use=yes ! else ! echo "configure: failed program was:" >&5 ! cat conftest.$ac_ext >&5 ! rm -rf conftest* ! glibcpp_cv_func__atan2f_use=no ! fi ! rm -f conftest* ! ac_ext=c ! # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. ! ac_cpp='$CPP $CPPFLAGS' ! ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' ! ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' ! cross_compiling=$ac_cv_prog_cc_cross ! ! ! fi ! ! fi ! echo "$ac_t""$glibcpp_cv_func__atan2f_use" 1>&6 ! ! if test x$glibcpp_cv_func__atan2f_use = x"yes"; then ! for ac_func in _atan2f ! do ! echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:8864: checking for $ac_func" >&5 ! if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then ! echo $ac_n "(cached) $ac_c" 1>&6 ! else ! cat > conftest.$ac_ext < ! /* Override any gcc2 internal prototype to avoid an error. */ ! /* We use char because int might match the return type of a gcc2 ! builtin and then its argument prototype would still apply. */ ! char $ac_func(); ! ! int main() { ! ! /* The GNU C library defines this for functions which it implements ! to always fail with ENOSYS. Some functions are actually named ! something starting with __ and the normal name is an alias. */ ! #if defined (__stub_$ac_func) || defined (__stub___$ac_func) ! choke me ! #else ! $ac_func(); ! #endif ! ! ; return 0; } ! EOF ! if { (eval echo configure:8892: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 8501,8507 **** echo $ac_n "checking for fabsf declaration""... $ac_c" 1>&6 ! echo "configure:8505: checking for fabsf declaration" >&5 if test x${glibcpp_cv_func_fabsf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_fabsf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 8918,8924 ---- echo $ac_n "checking for fabsf declaration""... $ac_c" 1>&6 ! echo "configure:8922: checking for fabsf declaration" >&5 if test x${glibcpp_cv_func_fabsf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_fabsf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 8516,8522 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 8933,8939 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 8527,8533 **** fabsf(0); ; return 0; } EOF ! if { (eval echo configure:8531: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_fabsf_use=yes else --- 8944,8950 ---- fabsf(0); ; return 0; } EOF ! if { (eval echo configure:8948: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_fabsf_use=yes else *************** fi *** 8554,8565 **** for ac_func in fabsf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:8558: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:8975: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 8999,9005 ---- ; return 0; } EOF ! if { (eval echo configure:9003: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 8609,8615 **** else echo $ac_n "checking for _fabsf declaration""... $ac_c" 1>&6 ! echo "configure:8613: checking for _fabsf declaration" >&5 if test x${glibcpp_cv_func__fabsf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__fabsf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 9026,9032 ---- else echo $ac_n "checking for _fabsf declaration""... $ac_c" 1>&6 ! echo "configure:9030: checking for _fabsf declaration" >&5 if test x${glibcpp_cv_func__fabsf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__fabsf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 8624,8630 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 9041,9047 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 8635,8641 **** _fabsf(0); ; return 0; } EOF ! if { (eval echo configure:8639: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__fabsf_use=yes else --- 9052,9058 ---- _fabsf(0); ; return 0; } EOF ! if { (eval echo configure:9056: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__fabsf_use=yes else *************** fi *** 8662,8673 **** for ac_func in _fabsf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:8666: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:9083: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 9107,9113 ---- ; return 0; } EOF ! if { (eval echo configure:9111: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 8720,8726 **** echo $ac_n "checking for fmodf declaration""... $ac_c" 1>&6 ! echo "configure:8724: checking for fmodf declaration" >&5 if test x${glibcpp_cv_func_fmodf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_fmodf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 9137,9143 ---- echo $ac_n "checking for fmodf declaration""... $ac_c" 1>&6 ! echo "configure:9141: checking for fmodf declaration" >&5 if test x${glibcpp_cv_func_fmodf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_fmodf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 8735,8748 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { fmodf(0, 0); ; return 0; } EOF ! if { (eval echo configure:8746: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_fmodf_use=yes else --- 9152,9165 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { fmodf(0, 0); ; return 0; } EOF ! if { (eval echo configure:9163: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_fmodf_use=yes else *************** fi *** 8769,8780 **** for ac_func in fmodf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:8773: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:9190: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 9214,9220 ---- ; return 0; } EOF ! if { (eval echo configure:9218: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 8824,8830 **** else echo $ac_n "checking for _fmodf declaration""... $ac_c" 1>&6 ! echo "configure:8828: checking for _fmodf declaration" >&5 if test x${glibcpp_cv_func__fmodf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__fmodf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 9241,9247 ---- else echo $ac_n "checking for _fmodf declaration""... $ac_c" 1>&6 ! echo "configure:9245: checking for _fmodf declaration" >&5 if test x${glibcpp_cv_func__fmodf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__fmodf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 8839,8852 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _fmodf(0, 0); ; return 0; } EOF ! if { (eval echo configure:8850: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__fmodf_use=yes else --- 9256,9269 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _fmodf(0, 0); ; return 0; } EOF ! if { (eval echo configure:9267: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__fmodf_use=yes else *************** fi *** 8873,8884 **** for ac_func in _fmodf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:8877: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:9294: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 9318,9324 ---- ; return 0; } EOF ! if { (eval echo configure:9322: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 8931,8937 **** echo $ac_n "checking for frexpf declaration""... $ac_c" 1>&6 ! echo "configure:8935: checking for frexpf declaration" >&5 if test x${glibcpp_cv_func_frexpf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_frexpf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 9348,9354 ---- echo $ac_n "checking for frexpf declaration""... $ac_c" 1>&6 ! echo "configure:9352: checking for frexpf declaration" >&5 if test x${glibcpp_cv_func_frexpf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_frexpf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 8946,8959 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { frexpf(0, 0); ; return 0; } EOF ! if { (eval echo configure:8957: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_frexpf_use=yes else --- 9363,9376 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { frexpf(0, 0); ; return 0; } EOF ! if { (eval echo configure:9374: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_frexpf_use=yes else *************** fi *** 8980,8991 **** for ac_func in frexpf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:8984: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:9401: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 9425,9431 ---- ; return 0; } EOF ! if { (eval echo configure:9429: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 9035,9041 **** else echo $ac_n "checking for _frexpf declaration""... $ac_c" 1>&6 ! echo "configure:9039: checking for _frexpf declaration" >&5 if test x${glibcpp_cv_func__frexpf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__frexpf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 9452,9458 ---- else echo $ac_n "checking for _frexpf declaration""... $ac_c" 1>&6 ! echo "configure:9456: checking for _frexpf declaration" >&5 if test x${glibcpp_cv_func__frexpf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__frexpf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 9050,9063 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _frexpf(0, 0); ; return 0; } EOF ! if { (eval echo configure:9061: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__frexpf_use=yes else --- 9467,9480 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _frexpf(0, 0); ; return 0; } EOF ! if { (eval echo configure:9478: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__frexpf_use=yes else *************** fi *** 9084,9095 **** for ac_func in _frexpf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:9088: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:9505: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 9529,9746 ---- ; return 0; } EOF ! if { (eval echo configure:9533: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ! rm -rf conftest* ! eval "ac_cv_func_$ac_func=yes" ! else ! echo "configure: failed program was:" >&5 ! cat conftest.$ac_ext >&5 ! rm -rf conftest* ! eval "ac_cv_func_$ac_func=no" ! fi ! rm -f conftest* ! fi ! ! if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then ! echo "$ac_t""yes" 1>&6 ! ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` ! cat >> confdefs.h <&6 ! fi ! done ! ! fi ! fi ! ! ! ! echo $ac_n "checking for hypotf declaration""... $ac_c" 1>&6 ! echo "configure:9563: checking for hypotf declaration" >&5 ! if test x${glibcpp_cv_func_hypotf_use+set} != xset; then ! if eval "test \"`echo '$''{'glibcpp_cv_func_hypotf_use'+set}'`\" = set"; then ! echo $ac_n "(cached) $ac_c" 1>&6 ! else ! ! ! ac_ext=C ! # CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. ! ac_cpp='$CXXCPP $CPPFLAGS' ! ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' ! ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' ! cross_compiling=$ac_cv_prog_cxx_cross ! ! cat > conftest.$ac_ext < ! int main() { ! hypotf(0, 0); ! ; return 0; } ! EOF ! if { (eval echo configure:9585: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then ! rm -rf conftest* ! glibcpp_cv_func_hypotf_use=yes ! else ! echo "configure: failed program was:" >&5 ! cat conftest.$ac_ext >&5 ! rm -rf conftest* ! glibcpp_cv_func_hypotf_use=no ! fi ! rm -f conftest* ! ac_ext=c ! # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. ! ac_cpp='$CPP $CPPFLAGS' ! ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' ! ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' ! cross_compiling=$ac_cv_prog_cc_cross ! ! ! fi ! ! fi ! echo "$ac_t""$glibcpp_cv_func_hypotf_use" 1>&6 ! ! if test x$glibcpp_cv_func_hypotf_use = x"yes"; then ! for ac_func in hypotf ! do ! echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:9612: checking for $ac_func" >&5 ! if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then ! echo $ac_n "(cached) $ac_c" 1>&6 ! else ! cat > conftest.$ac_ext < ! /* Override any gcc2 internal prototype to avoid an error. */ ! /* We use char because int might match the return type of a gcc2 ! builtin and then its argument prototype would still apply. */ ! char $ac_func(); ! ! int main() { ! ! /* The GNU C library defines this for functions which it implements ! to always fail with ENOSYS. Some functions are actually named ! something starting with __ and the normal name is an alias. */ ! #if defined (__stub_$ac_func) || defined (__stub___$ac_func) ! choke me ! #else ! $ac_func(); ! #endif ! ! ; return 0; } ! EOF ! if { (eval echo configure:9640: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ! rm -rf conftest* ! eval "ac_cv_func_$ac_func=yes" ! else ! echo "configure: failed program was:" >&5 ! cat conftest.$ac_ext >&5 ! rm -rf conftest* ! eval "ac_cv_func_$ac_func=no" ! fi ! rm -f conftest* ! fi ! ! if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then ! echo "$ac_t""yes" 1>&6 ! ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` ! cat >> confdefs.h <&6 ! fi ! done ! ! else ! ! echo $ac_n "checking for _hypotf declaration""... $ac_c" 1>&6 ! echo "configure:9667: checking for _hypotf declaration" >&5 ! if test x${glibcpp_cv_func__hypotf_use+set} != xset; then ! if eval "test \"`echo '$''{'glibcpp_cv_func__hypotf_use'+set}'`\" = set"; then ! echo $ac_n "(cached) $ac_c" 1>&6 ! else ! ! ! ac_ext=C ! # CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. ! ac_cpp='$CXXCPP $CPPFLAGS' ! ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' ! ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' ! cross_compiling=$ac_cv_prog_cxx_cross ! ! cat > conftest.$ac_ext < ! int main() { ! _hypotf(0, 0); ! ; return 0; } ! EOF ! if { (eval echo configure:9689: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then ! rm -rf conftest* ! glibcpp_cv_func__hypotf_use=yes ! else ! echo "configure: failed program was:" >&5 ! cat conftest.$ac_ext >&5 ! rm -rf conftest* ! glibcpp_cv_func__hypotf_use=no ! fi ! rm -f conftest* ! ac_ext=c ! # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. ! ac_cpp='$CPP $CPPFLAGS' ! ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' ! ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' ! cross_compiling=$ac_cv_prog_cc_cross ! ! ! fi ! ! fi ! echo "$ac_t""$glibcpp_cv_func__hypotf_use" 1>&6 ! ! if test x$glibcpp_cv_func__hypotf_use = x"yes"; then ! for ac_func in _hypotf ! do ! echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:9716: checking for $ac_func" >&5 ! if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then ! echo $ac_n "(cached) $ac_c" 1>&6 ! else ! cat > conftest.$ac_ext < ! /* Override any gcc2 internal prototype to avoid an error. */ ! /* We use char because int might match the return type of a gcc2 ! builtin and then its argument prototype would still apply. */ ! char $ac_func(); ! ! int main() { ! ! /* The GNU C library defines this for functions which it implements ! to always fail with ENOSYS. Some functions are actually named ! something starting with __ and the normal name is an alias. */ ! #if defined (__stub_$ac_func) || defined (__stub___$ac_func) ! choke me ! #else ! $ac_func(); ! #endif ! ! ; return 0; } ! EOF ! if { (eval echo configure:9744: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 9142,9148 **** echo $ac_n "checking for ldexpf declaration""... $ac_c" 1>&6 ! echo "configure:9146: checking for ldexpf declaration" >&5 if test x${glibcpp_cv_func_ldexpf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_ldexpf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 9770,9776 ---- echo $ac_n "checking for ldexpf declaration""... $ac_c" 1>&6 ! echo "configure:9774: checking for ldexpf declaration" >&5 if test x${glibcpp_cv_func_ldexpf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_ldexpf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 9157,9170 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { ldexpf(0, 0); ; return 0; } EOF ! if { (eval echo configure:9168: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_ldexpf_use=yes else --- 9785,9798 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { ldexpf(0, 0); ; return 0; } EOF ! if { (eval echo configure:9796: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_ldexpf_use=yes else *************** fi *** 9191,9202 **** for ac_func in ldexpf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:9195: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:9823: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 9847,9853 ---- ; return 0; } EOF ! if { (eval echo configure:9851: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 9246,9252 **** else echo $ac_n "checking for _ldexpf declaration""... $ac_c" 1>&6 ! echo "configure:9250: checking for _ldexpf declaration" >&5 if test x${glibcpp_cv_func__ldexpf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__ldexpf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 9874,9880 ---- else echo $ac_n "checking for _ldexpf declaration""... $ac_c" 1>&6 ! echo "configure:9878: checking for _ldexpf declaration" >&5 if test x${glibcpp_cv_func__ldexpf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__ldexpf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 9261,9274 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _ldexpf(0, 0); ; return 0; } EOF ! if { (eval echo configure:9272: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__ldexpf_use=yes else --- 9889,9902 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _ldexpf(0, 0); ; return 0; } EOF ! if { (eval echo configure:9900: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__ldexpf_use=yes else *************** fi *** 9295,9306 **** for ac_func in _ldexpf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:9299: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:9927: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 9951,9957 ---- ; return 0; } EOF ! if { (eval echo configure:9955: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 9353,9359 **** echo $ac_n "checking for logf declaration""... $ac_c" 1>&6 ! echo "configure:9357: checking for logf declaration" >&5 if test x${glibcpp_cv_func_logf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_logf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 9981,9987 ---- echo $ac_n "checking for logf declaration""... $ac_c" 1>&6 ! echo "configure:9985: checking for logf declaration" >&5 if test x${glibcpp_cv_func_logf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_logf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 9368,9374 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 9996,10002 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 9379,9385 **** logf(0); ; return 0; } EOF ! if { (eval echo configure:9383: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_logf_use=yes else --- 10007,10013 ---- logf(0); ; return 0; } EOF ! if { (eval echo configure:10011: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_logf_use=yes else *************** fi *** 9406,9417 **** for ac_func in logf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:9410: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:10038: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 10062,10068 ---- ; return 0; } EOF ! if { (eval echo configure:10066: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 9461,9467 **** else echo $ac_n "checking for _logf declaration""... $ac_c" 1>&6 ! echo "configure:9465: checking for _logf declaration" >&5 if test x${glibcpp_cv_func__logf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__logf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 10089,10095 ---- else echo $ac_n "checking for _logf declaration""... $ac_c" 1>&6 ! echo "configure:10093: checking for _logf declaration" >&5 if test x${glibcpp_cv_func__logf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__logf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 9476,9482 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 10104,10110 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 9487,9493 **** _logf(0); ; return 0; } EOF ! if { (eval echo configure:9491: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__logf_use=yes else --- 10115,10121 ---- _logf(0); ; return 0; } EOF ! if { (eval echo configure:10119: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__logf_use=yes else *************** fi *** 9514,9525 **** for ac_func in _logf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:9518: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:10146: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 10170,10176 ---- ; return 0; } EOF ! if { (eval echo configure:10174: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 9572,9578 **** echo $ac_n "checking for log10f declaration""... $ac_c" 1>&6 ! echo "configure:9576: checking for log10f declaration" >&5 if test x${glibcpp_cv_func_log10f_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_log10f_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 10200,10206 ---- echo $ac_n "checking for log10f declaration""... $ac_c" 1>&6 ! echo "configure:10204: checking for log10f declaration" >&5 if test x${glibcpp_cv_func_log10f_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_log10f_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 9587,9593 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 10215,10221 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 9598,9604 **** log10f(0); ; return 0; } EOF ! if { (eval echo configure:9602: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_log10f_use=yes else --- 10226,10232 ---- log10f(0); ; return 0; } EOF ! if { (eval echo configure:10230: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_log10f_use=yes else *************** fi *** 9625,9636 **** for ac_func in log10f do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:9629: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:10257: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 10281,10287 ---- ; return 0; } EOF ! if { (eval echo configure:10285: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 9680,9686 **** else echo $ac_n "checking for _log10f declaration""... $ac_c" 1>&6 ! echo "configure:9684: checking for _log10f declaration" >&5 if test x${glibcpp_cv_func__log10f_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__log10f_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 10308,10314 ---- else echo $ac_n "checking for _log10f declaration""... $ac_c" 1>&6 ! echo "configure:10312: checking for _log10f declaration" >&5 if test x${glibcpp_cv_func__log10f_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__log10f_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 9695,9701 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 10323,10329 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 9706,9712 **** _log10f(0); ; return 0; } EOF ! if { (eval echo configure:9710: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__log10f_use=yes else --- 10334,10340 ---- _log10f(0); ; return 0; } EOF ! if { (eval echo configure:10338: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__log10f_use=yes else *************** fi *** 9733,9744 **** for ac_func in _log10f do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:9737: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:10365: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 10389,10395 ---- ; return 0; } EOF ! if { (eval echo configure:10393: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 9791,9797 **** echo $ac_n "checking for modff declaration""... $ac_c" 1>&6 ! echo "configure:9795: checking for modff declaration" >&5 if test x${glibcpp_cv_func_modff_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_modff_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 10419,10425 ---- echo $ac_n "checking for modff declaration""... $ac_c" 1>&6 ! echo "configure:10423: checking for modff declaration" >&5 if test x${glibcpp_cv_func_modff_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_modff_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 9806,9819 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { modff(0, 0); ; return 0; } EOF ! if { (eval echo configure:9817: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_modff_use=yes else --- 10434,10447 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { modff(0, 0); ; return 0; } EOF ! if { (eval echo configure:10445: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_modff_use=yes else *************** fi *** 9840,9851 **** for ac_func in modff do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:9844: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:10472: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 10496,10502 ---- ; return 0; } EOF ! if { (eval echo configure:10500: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 9895,9901 **** else echo $ac_n "checking for _modff declaration""... $ac_c" 1>&6 ! echo "configure:9899: checking for _modff declaration" >&5 if test x${glibcpp_cv_func__modff_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__modff_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 10523,10529 ---- else echo $ac_n "checking for _modff declaration""... $ac_c" 1>&6 ! echo "configure:10527: checking for _modff declaration" >&5 if test x${glibcpp_cv_func__modff_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__modff_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 9910,9923 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _modff(0, 0); ; return 0; } EOF ! if { (eval echo configure:9921: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__modff_use=yes else --- 10538,10551 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _modff(0, 0); ; return 0; } EOF ! if { (eval echo configure:10549: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__modff_use=yes else *************** fi *** 9944,9955 **** for ac_func in _modff do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:9948: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:10576: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 10600,10606 ---- ; return 0; } EOF ! if { (eval echo configure:10604: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 10002,10008 **** echo $ac_n "checking for powf declaration""... $ac_c" 1>&6 ! echo "configure:10006: checking for powf declaration" >&5 if test x${glibcpp_cv_func_powf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_powf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 10630,10636 ---- echo $ac_n "checking for powf declaration""... $ac_c" 1>&6 ! echo "configure:10634: checking for powf declaration" >&5 if test x${glibcpp_cv_func_powf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_powf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 10017,10030 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { powf(0, 0); ; return 0; } EOF ! if { (eval echo configure:10028: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_powf_use=yes else --- 10645,10658 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { powf(0, 0); ; return 0; } EOF ! if { (eval echo configure:10656: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_powf_use=yes else *************** fi *** 10051,10062 **** for ac_func in powf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:10055: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:10683: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 10707,10713 ---- ; return 0; } EOF ! if { (eval echo configure:10711: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 10106,10112 **** else echo $ac_n "checking for _powf declaration""... $ac_c" 1>&6 ! echo "configure:10110: checking for _powf declaration" >&5 if test x${glibcpp_cv_func__powf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__powf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 10734,10740 ---- else echo $ac_n "checking for _powf declaration""... $ac_c" 1>&6 ! echo "configure:10738: checking for _powf declaration" >&5 if test x${glibcpp_cv_func__powf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__powf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 10121,10134 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _powf(0, 0); ; return 0; } EOF ! if { (eval echo configure:10132: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__powf_use=yes else --- 10749,10762 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _powf(0, 0); ; return 0; } EOF ! if { (eval echo configure:10760: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__powf_use=yes else *************** fi *** 10155,10166 **** for ac_func in _powf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:10159: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:10787: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 10811,10817 ---- ; return 0; } EOF ! if { (eval echo configure:10815: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 10213,10219 **** echo $ac_n "checking for sqrtf declaration""... $ac_c" 1>&6 ! echo "configure:10217: checking for sqrtf declaration" >&5 if test x${glibcpp_cv_func_sqrtf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_sqrtf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 10841,10847 ---- echo $ac_n "checking for sqrtf declaration""... $ac_c" 1>&6 ! echo "configure:10845: checking for sqrtf declaration" >&5 if test x${glibcpp_cv_func_sqrtf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_sqrtf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 10228,10234 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 10856,10862 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 10239,10245 **** sqrtf(0); ; return 0; } EOF ! if { (eval echo configure:10243: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_sqrtf_use=yes else --- 10867,10873 ---- sqrtf(0); ; return 0; } EOF ! if { (eval echo configure:10871: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_sqrtf_use=yes else *************** fi *** 10266,10277 **** for ac_func in sqrtf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:10270: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:10898: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 10922,10928 ---- ; return 0; } EOF ! if { (eval echo configure:10926: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 10321,10327 **** else echo $ac_n "checking for _sqrtf declaration""... $ac_c" 1>&6 ! echo "configure:10325: checking for _sqrtf declaration" >&5 if test x${glibcpp_cv_func__sqrtf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__sqrtf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 10949,10955 ---- else echo $ac_n "checking for _sqrtf declaration""... $ac_c" 1>&6 ! echo "configure:10953: checking for _sqrtf declaration" >&5 if test x${glibcpp_cv_func__sqrtf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__sqrtf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 10336,10342 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 10964,10970 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 10347,10353 **** _sqrtf(0); ; return 0; } EOF ! if { (eval echo configure:10351: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__sqrtf_use=yes else --- 10975,10981 ---- _sqrtf(0); ; return 0; } EOF ! if { (eval echo configure:10979: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__sqrtf_use=yes else *************** fi *** 10374,10385 **** for ac_func in _sqrtf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:10378: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:11006: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 11030,11036 ---- ; return 0; } EOF ! if { (eval echo configure:11034: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 10432,10438 **** echo $ac_n "checking for sincosf declaration""... $ac_c" 1>&6 ! echo "configure:10436: checking for sincosf declaration" >&5 if test x${glibcpp_cv_func_sincosf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_sincosf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 11060,11066 ---- echo $ac_n "checking for sincosf declaration""... $ac_c" 1>&6 ! echo "configure:11064: checking for sincosf declaration" >&5 if test x${glibcpp_cv_func_sincosf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_sincosf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 10447,10460 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { sincosf(0, 0, 0); ; return 0; } EOF ! if { (eval echo configure:10458: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_sincosf_use=yes else --- 11075,11088 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { sincosf(0, 0, 0); ; return 0; } EOF ! if { (eval echo configure:11086: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_sincosf_use=yes else *************** fi *** 10481,10492 **** for ac_func in sincosf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:10485: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:11113: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 11137,11143 ---- ; return 0; } EOF ! if { (eval echo configure:11141: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 10536,10542 **** else echo $ac_n "checking for _sincosf declaration""... $ac_c" 1>&6 ! echo "configure:10540: checking for _sincosf declaration" >&5 if test x${glibcpp_cv_func__sincosf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__sincosf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 11164,11170 ---- else echo $ac_n "checking for _sincosf declaration""... $ac_c" 1>&6 ! echo "configure:11168: checking for _sincosf declaration" >&5 if test x${glibcpp_cv_func__sincosf_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__sincosf_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 10551,10564 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _sincosf(0, 0, 0); ; return 0; } EOF ! if { (eval echo configure:10562: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__sincosf_use=yes else --- 11179,11192 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _sincosf(0, 0, 0); ; return 0; } EOF ! if { (eval echo configure:11190: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__sincosf_use=yes else *************** fi *** 10585,10596 **** for ac_func in _sincosf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:10589: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:11217: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 11241,11247 ---- ; return 0; } EOF ! if { (eval echo configure:11245: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 10643,10649 **** echo $ac_n "checking for finitef declaration""... $ac_c" 1>&6 ! echo "configure:10647: checking for finitef declaration" >&5 if test x${glibcpp_cv_func_finitef_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_finitef_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 11271,11277 ---- echo $ac_n "checking for finitef declaration""... $ac_c" 1>&6 ! echo "configure:11275: checking for finitef declaration" >&5 if test x${glibcpp_cv_func_finitef_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_finitef_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 10658,10664 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 11286,11292 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 10669,10675 **** finitef(0); ; return 0; } EOF ! if { (eval echo configure:10673: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_finitef_use=yes else --- 11297,11303 ---- finitef(0); ; return 0; } EOF ! if { (eval echo configure:11301: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_finitef_use=yes else *************** fi *** 10696,10707 **** for ac_func in finitef do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:10700: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:11328: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 11352,11358 ---- ; return 0; } EOF ! if { (eval echo configure:11356: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 10751,10757 **** else echo $ac_n "checking for _finitef declaration""... $ac_c" 1>&6 ! echo "configure:10755: checking for _finitef declaration" >&5 if test x${glibcpp_cv_func__finitef_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__finitef_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 11379,11385 ---- else echo $ac_n "checking for _finitef declaration""... $ac_c" 1>&6 ! echo "configure:11383: checking for _finitef declaration" >&5 if test x${glibcpp_cv_func__finitef_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__finitef_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 10766,10772 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 11394,11400 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 10777,10783 **** _finitef(0); ; return 0; } EOF ! if { (eval echo configure:10781: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__finitef_use=yes else --- 11405,11411 ---- _finitef(0); ; return 0; } EOF ! if { (eval echo configure:11409: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__finitef_use=yes else *************** fi *** 10804,10815 **** for ac_func in _finitef do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:10808: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:11436: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 11460,11466 ---- ; return 0; } EOF ! if { (eval echo configure:11464: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 10862,10868 **** echo $ac_n "checking for long double trig functions""... $ac_c" 1>&6 ! echo "configure:10866: checking for long double trig functions" >&5 if eval "test \"`echo '$''{'glibcpp_cv_func_long_double_trig_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 11490,11496 ---- echo $ac_n "checking for long double trig functions""... $ac_c" 1>&6 ! echo "configure:11494: checking for long double trig functions" >&5 if eval "test \"`echo '$''{'glibcpp_cv_func_long_double_trig_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 10876,10882 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { --- 11504,11510 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { *************** int main() { *** 10885,10891 **** coshl sinhl tanhl; do echo "$x (0);"; done` ; return 0; } EOF ! if { (eval echo configure:10889: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_long_double_trig_use=yes else --- 11513,11519 ---- coshl sinhl tanhl; do echo "$x (0);"; done` ; return 0; } EOF ! if { (eval echo configure:11517: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_long_double_trig_use=yes else *************** fi *** 10911,10922 **** coshl sinhl tanhl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:10915: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:11543: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 11567,11573 ---- ; return 0; } EOF ! if { (eval echo configure:11571: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 10967,10973 **** echo $ac_n "checking for long double round functions""... $ac_c" 1>&6 ! echo "configure:10971: checking for long double round functions" >&5 if eval "test \"`echo '$''{'glibcpp_cv_func_long_double_round_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 11595,11601 ---- echo $ac_n "checking for long double round functions""... $ac_c" 1>&6 ! echo "configure:11599: checking for long double round functions" >&5 if eval "test \"`echo '$''{'glibcpp_cv_func_long_double_round_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 10981,10994 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { `for x in ceill floorl; do echo "$x (0);"; done` ; return 0; } EOF ! if { (eval echo configure:10992: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_long_double_round_use=yes else --- 11609,11622 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { `for x in ceill floorl; do echo "$x (0);"; done` ; return 0; } EOF ! if { (eval echo configure:11620: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_long_double_round_use=yes else *************** fi *** 11012,11023 **** for ac_func in ceill floorl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:11016: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:11644: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 11668,11674 ---- ; return 0; } EOF ! if { (eval echo configure:11672: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 11069,11075 **** echo $ac_n "checking for isnanl declaration""... $ac_c" 1>&6 ! echo "configure:11073: checking for isnanl declaration" >&5 if test x${glibcpp_cv_func_isnanl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_isnanl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 11697,11703 ---- echo $ac_n "checking for isnanl declaration""... $ac_c" 1>&6 ! echo "configure:11701: checking for isnanl declaration" >&5 if test x${glibcpp_cv_func_isnanl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_isnanl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 11084,11090 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 11712,11718 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 11095,11101 **** isnanl(0); ; return 0; } EOF ! if { (eval echo configure:11099: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_isnanl_use=yes else --- 11723,11729 ---- isnanl(0); ; return 0; } EOF ! if { (eval echo configure:11727: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_isnanl_use=yes else *************** fi *** 11122,11133 **** for ac_func in isnanl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:11126: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:11754: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 11778,11784 ---- ; return 0; } EOF ! if { (eval echo configure:11782: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 11177,11183 **** else echo $ac_n "checking for _isnanl declaration""... $ac_c" 1>&6 ! echo "configure:11181: checking for _isnanl declaration" >&5 if test x${glibcpp_cv_func__isnanl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__isnanl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 11805,11811 ---- else echo $ac_n "checking for _isnanl declaration""... $ac_c" 1>&6 ! echo "configure:11809: checking for _isnanl declaration" >&5 if test x${glibcpp_cv_func__isnanl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__isnanl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 11192,11198 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 11820,11826 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 11203,11209 **** _isnanl(0); ; return 0; } EOF ! if { (eval echo configure:11207: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__isnanl_use=yes else --- 11831,11837 ---- _isnanl(0); ; return 0; } EOF ! if { (eval echo configure:11835: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__isnanl_use=yes else *************** fi *** 11230,11241 **** for ac_func in _isnanl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:11234: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:11862: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 11886,11892 ---- ; return 0; } EOF ! if { (eval echo configure:11890: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 11288,11294 **** echo $ac_n "checking for isinfl declaration""... $ac_c" 1>&6 ! echo "configure:11292: checking for isinfl declaration" >&5 if test x${glibcpp_cv_func_isinfl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_isinfl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 11916,11922 ---- echo $ac_n "checking for isinfl declaration""... $ac_c" 1>&6 ! echo "configure:11920: checking for isinfl declaration" >&5 if test x${glibcpp_cv_func_isinfl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_isinfl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 11303,11309 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 11931,11937 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 11314,11320 **** isinfl(0); ; return 0; } EOF ! if { (eval echo configure:11318: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_isinfl_use=yes else --- 11942,11948 ---- isinfl(0); ; return 0; } EOF ! if { (eval echo configure:11946: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_isinfl_use=yes else *************** fi *** 11341,11352 **** for ac_func in isinfl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:11345: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:11973: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 11997,12003 ---- ; return 0; } EOF ! if { (eval echo configure:12001: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 11396,11402 **** else echo $ac_n "checking for _isinfl declaration""... $ac_c" 1>&6 ! echo "configure:11400: checking for _isinfl declaration" >&5 if test x${glibcpp_cv_func__isinfl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__isinfl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 12024,12030 ---- else echo $ac_n "checking for _isinfl declaration""... $ac_c" 1>&6 ! echo "configure:12028: checking for _isinfl declaration" >&5 if test x${glibcpp_cv_func__isinfl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__isinfl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 11411,11417 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 12039,12045 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 11422,11428 **** _isinfl(0); ; return 0; } EOF ! if { (eval echo configure:11426: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__isinfl_use=yes else --- 12050,12056 ---- _isinfl(0); ; return 0; } EOF ! if { (eval echo configure:12054: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__isinfl_use=yes else *************** fi *** 11449,11460 **** for ac_func in _isinfl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:11453: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:12081: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 12105,12111 ---- ; return 0; } EOF ! if { (eval echo configure:12109: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 11507,11513 **** echo $ac_n "checking for copysignl declaration""... $ac_c" 1>&6 ! echo "configure:11511: checking for copysignl declaration" >&5 if test x${glibcpp_cv_func_copysignl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_copysignl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 12135,12141 ---- echo $ac_n "checking for copysignl declaration""... $ac_c" 1>&6 ! echo "configure:12139: checking for copysignl declaration" >&5 if test x${glibcpp_cv_func_copysignl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_copysignl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 11522,11535 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { copysignl(0, 0); ; return 0; } EOF ! if { (eval echo configure:11533: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_copysignl_use=yes else --- 12150,12163 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { copysignl(0, 0); ; return 0; } EOF ! if { (eval echo configure:12161: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_copysignl_use=yes else *************** fi *** 11556,11567 **** for ac_func in copysignl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:11560: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:12188: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 12212,12218 ---- ; return 0; } EOF ! if { (eval echo configure:12216: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 11611,11617 **** else echo $ac_n "checking for _copysignl declaration""... $ac_c" 1>&6 ! echo "configure:11615: checking for _copysignl declaration" >&5 if test x${glibcpp_cv_func__copysignl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__copysignl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 12239,12245 ---- else echo $ac_n "checking for _copysignl declaration""... $ac_c" 1>&6 ! echo "configure:12243: checking for _copysignl declaration" >&5 if test x${glibcpp_cv_func__copysignl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__copysignl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 11626,11639 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _copysignl(0, 0); ; return 0; } EOF ! if { (eval echo configure:11637: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__copysignl_use=yes else --- 12254,12267 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _copysignl(0, 0); ; return 0; } EOF ! if { (eval echo configure:12265: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__copysignl_use=yes else *************** fi *** 11660,11671 **** for ac_func in _copysignl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:11664: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:12292: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 12316,12322 ---- ; return 0; } EOF ! if { (eval echo configure:12320: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 11718,11724 **** echo $ac_n "checking for atan2l declaration""... $ac_c" 1>&6 ! echo "configure:11722: checking for atan2l declaration" >&5 if test x${glibcpp_cv_func_atan2l_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_atan2l_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 12346,12352 ---- echo $ac_n "checking for atan2l declaration""... $ac_c" 1>&6 ! echo "configure:12350: checking for atan2l declaration" >&5 if test x${glibcpp_cv_func_atan2l_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_atan2l_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 11733,11746 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { atan2l(0, 0); ; return 0; } EOF ! if { (eval echo configure:11744: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_atan2l_use=yes else --- 12361,12374 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { atan2l(0, 0); ; return 0; } EOF ! if { (eval echo configure:12372: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_atan2l_use=yes else *************** fi *** 11767,11778 **** for ac_func in atan2l do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:11771: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:12399: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 12423,12429 ---- ; return 0; } EOF ! if { (eval echo configure:12427: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 11822,11828 **** else echo $ac_n "checking for _atan2l declaration""... $ac_c" 1>&6 ! echo "configure:11826: checking for _atan2l declaration" >&5 if test x${glibcpp_cv_func__atan2l_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__atan2l_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 12450,12456 ---- else echo $ac_n "checking for _atan2l declaration""... $ac_c" 1>&6 ! echo "configure:12454: checking for _atan2l declaration" >&5 if test x${glibcpp_cv_func__atan2l_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__atan2l_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 11837,11850 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _atan2l(0, 0); ; return 0; } EOF ! if { (eval echo configure:11848: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__atan2l_use=yes else --- 12465,12478 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _atan2l(0, 0); ; return 0; } EOF ! if { (eval echo configure:12476: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__atan2l_use=yes else *************** fi *** 11871,11882 **** for ac_func in _atan2l do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:11875: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:12503: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 12527,12533 ---- ; return 0; } EOF ! if { (eval echo configure:12531: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 11929,11935 **** echo $ac_n "checking for expl declaration""... $ac_c" 1>&6 ! echo "configure:11933: checking for expl declaration" >&5 if test x${glibcpp_cv_func_expl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_expl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 12557,12563 ---- echo $ac_n "checking for expl declaration""... $ac_c" 1>&6 ! echo "configure:12561: checking for expl declaration" >&5 if test x${glibcpp_cv_func_expl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_expl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 11944,11950 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 12572,12578 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 11955,11961 **** expl(0); ; return 0; } EOF ! if { (eval echo configure:11959: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_expl_use=yes else --- 12583,12589 ---- expl(0); ; return 0; } EOF ! if { (eval echo configure:12587: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_expl_use=yes else *************** fi *** 11982,11993 **** for ac_func in expl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:11986: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:12614: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 12638,12644 ---- ; return 0; } EOF ! if { (eval echo configure:12642: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 12037,12043 **** else echo $ac_n "checking for _expl declaration""... $ac_c" 1>&6 ! echo "configure:12041: checking for _expl declaration" >&5 if test x${glibcpp_cv_func__expl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__expl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 12665,12671 ---- else echo $ac_n "checking for _expl declaration""... $ac_c" 1>&6 ! echo "configure:12669: checking for _expl declaration" >&5 if test x${glibcpp_cv_func__expl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__expl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 12052,12058 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 12680,12686 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 12063,12069 **** _expl(0); ; return 0; } EOF ! if { (eval echo configure:12067: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__expl_use=yes else --- 12691,12697 ---- _expl(0); ; return 0; } EOF ! if { (eval echo configure:12695: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__expl_use=yes else *************** fi *** 12090,12101 **** for ac_func in _expl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:12094: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:12722: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 12746,12752 ---- ; return 0; } EOF ! if { (eval echo configure:12750: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 12148,12154 **** echo $ac_n "checking for fabsl declaration""... $ac_c" 1>&6 ! echo "configure:12152: checking for fabsl declaration" >&5 if test x${glibcpp_cv_func_fabsl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_fabsl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 12776,12782 ---- echo $ac_n "checking for fabsl declaration""... $ac_c" 1>&6 ! echo "configure:12780: checking for fabsl declaration" >&5 if test x${glibcpp_cv_func_fabsl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_fabsl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 12163,12169 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 12791,12797 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 12174,12180 **** fabsl(0); ; return 0; } EOF ! if { (eval echo configure:12178: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_fabsl_use=yes else --- 12802,12808 ---- fabsl(0); ; return 0; } EOF ! if { (eval echo configure:12806: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_fabsl_use=yes else *************** fi *** 12201,12212 **** for ac_func in fabsl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:12205: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:12833: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 12857,12863 ---- ; return 0; } EOF ! if { (eval echo configure:12861: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 12256,12262 **** else echo $ac_n "checking for _fabsl declaration""... $ac_c" 1>&6 ! echo "configure:12260: checking for _fabsl declaration" >&5 if test x${glibcpp_cv_func__fabsl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__fabsl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 12884,12890 ---- else echo $ac_n "checking for _fabsl declaration""... $ac_c" 1>&6 ! echo "configure:12888: checking for _fabsl declaration" >&5 if test x${glibcpp_cv_func__fabsl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__fabsl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 12271,12277 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 12899,12905 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 12282,12288 **** _fabsl(0); ; return 0; } EOF ! if { (eval echo configure:12286: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__fabsl_use=yes else --- 12910,12916 ---- _fabsl(0); ; return 0; } EOF ! if { (eval echo configure:12914: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__fabsl_use=yes else *************** fi *** 12309,12320 **** for ac_func in _fabsl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:12313: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:12941: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 12965,12971 ---- ; return 0; } EOF ! if { (eval echo configure:12969: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 12367,12373 **** echo $ac_n "checking for fmodl declaration""... $ac_c" 1>&6 ! echo "configure:12371: checking for fmodl declaration" >&5 if test x${glibcpp_cv_func_fmodl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_fmodl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 12995,13001 ---- echo $ac_n "checking for fmodl declaration""... $ac_c" 1>&6 ! echo "configure:12999: checking for fmodl declaration" >&5 if test x${glibcpp_cv_func_fmodl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_fmodl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 12382,12395 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { fmodl(0, 0); ; return 0; } EOF ! if { (eval echo configure:12393: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_fmodl_use=yes else --- 13010,13023 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { fmodl(0, 0); ; return 0; } EOF ! if { (eval echo configure:13021: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_fmodl_use=yes else *************** fi *** 12416,12427 **** for ac_func in fmodl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:12420: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:13048: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 13072,13078 ---- ; return 0; } EOF ! if { (eval echo configure:13076: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 12471,12477 **** else echo $ac_n "checking for _fmodl declaration""... $ac_c" 1>&6 ! echo "configure:12475: checking for _fmodl declaration" >&5 if test x${glibcpp_cv_func__fmodl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__fmodl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 13099,13105 ---- else echo $ac_n "checking for _fmodl declaration""... $ac_c" 1>&6 ! echo "configure:13103: checking for _fmodl declaration" >&5 if test x${glibcpp_cv_func__fmodl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__fmodl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 12486,12499 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _fmodl(0, 0); ; return 0; } EOF ! if { (eval echo configure:12497: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__fmodl_use=yes else --- 13114,13127 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _fmodl(0, 0); ; return 0; } EOF ! if { (eval echo configure:13125: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__fmodl_use=yes else *************** fi *** 12520,12531 **** for ac_func in _fmodl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:12524: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:13152: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 13176,13182 ---- ; return 0; } EOF ! if { (eval echo configure:13180: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 12578,12584 **** echo $ac_n "checking for frexpl declaration""... $ac_c" 1>&6 ! echo "configure:12582: checking for frexpl declaration" >&5 if test x${glibcpp_cv_func_frexpl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_frexpl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 13206,13212 ---- echo $ac_n "checking for frexpl declaration""... $ac_c" 1>&6 ! echo "configure:13210: checking for frexpl declaration" >&5 if test x${glibcpp_cv_func_frexpl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_frexpl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 12593,12606 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { frexpl(0, 0); ; return 0; } EOF ! if { (eval echo configure:12604: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_frexpl_use=yes else --- 13221,13234 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { frexpl(0, 0); ; return 0; } EOF ! if { (eval echo configure:13232: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_frexpl_use=yes else *************** fi *** 12627,12638 **** for ac_func in frexpl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:12631: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:13259: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 13283,13289 ---- ; return 0; } EOF ! if { (eval echo configure:13287: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 12682,12688 **** else echo $ac_n "checking for _frexpl declaration""... $ac_c" 1>&6 ! echo "configure:12686: checking for _frexpl declaration" >&5 if test x${glibcpp_cv_func__frexpl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__frexpl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 13310,13316 ---- else echo $ac_n "checking for _frexpl declaration""... $ac_c" 1>&6 ! echo "configure:13314: checking for _frexpl declaration" >&5 if test x${glibcpp_cv_func__frexpl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__frexpl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 12697,12710 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _frexpl(0, 0); ; return 0; } EOF ! if { (eval echo configure:12708: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__frexpl_use=yes else --- 13325,13338 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _frexpl(0, 0); ; return 0; } EOF ! if { (eval echo configure:13336: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__frexpl_use=yes else *************** fi *** 12731,12742 **** for ac_func in _frexpl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:12735: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:13363: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 13387,13604 ---- ; return 0; } EOF ! if { (eval echo configure:13391: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ! rm -rf conftest* ! eval "ac_cv_func_$ac_func=yes" ! else ! echo "configure: failed program was:" >&5 ! cat conftest.$ac_ext >&5 ! rm -rf conftest* ! eval "ac_cv_func_$ac_func=no" ! fi ! rm -f conftest* ! fi ! ! if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then ! echo "$ac_t""yes" 1>&6 ! ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` ! cat >> confdefs.h <&6 ! fi ! done ! ! fi ! fi ! ! ! ! echo $ac_n "checking for hypotl declaration""... $ac_c" 1>&6 ! echo "configure:13421: checking for hypotl declaration" >&5 ! if test x${glibcpp_cv_func_hypotl_use+set} != xset; then ! if eval "test \"`echo '$''{'glibcpp_cv_func_hypotl_use'+set}'`\" = set"; then ! echo $ac_n "(cached) $ac_c" 1>&6 ! else ! ! ! ac_ext=C ! # CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. ! ac_cpp='$CXXCPP $CPPFLAGS' ! ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' ! ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' ! cross_compiling=$ac_cv_prog_cxx_cross ! ! cat > conftest.$ac_ext < ! int main() { ! hypotl(0, 0); ! ; return 0; } ! EOF ! if { (eval echo configure:13443: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then ! rm -rf conftest* ! glibcpp_cv_func_hypotl_use=yes ! else ! echo "configure: failed program was:" >&5 ! cat conftest.$ac_ext >&5 ! rm -rf conftest* ! glibcpp_cv_func_hypotl_use=no ! fi ! rm -f conftest* ! ac_ext=c ! # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. ! ac_cpp='$CPP $CPPFLAGS' ! ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' ! ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' ! cross_compiling=$ac_cv_prog_cc_cross ! ! ! fi ! ! fi ! echo "$ac_t""$glibcpp_cv_func_hypotl_use" 1>&6 ! ! if test x$glibcpp_cv_func_hypotl_use = x"yes"; then ! for ac_func in hypotl ! do ! echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:13470: checking for $ac_func" >&5 ! if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then ! echo $ac_n "(cached) $ac_c" 1>&6 ! else ! cat > conftest.$ac_ext < ! /* Override any gcc2 internal prototype to avoid an error. */ ! /* We use char because int might match the return type of a gcc2 ! builtin and then its argument prototype would still apply. */ ! char $ac_func(); ! ! int main() { ! ! /* The GNU C library defines this for functions which it implements ! to always fail with ENOSYS. Some functions are actually named ! something starting with __ and the normal name is an alias. */ ! #if defined (__stub_$ac_func) || defined (__stub___$ac_func) ! choke me ! #else ! $ac_func(); ! #endif ! ! ; return 0; } ! EOF ! if { (eval echo configure:13498: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ! rm -rf conftest* ! eval "ac_cv_func_$ac_func=yes" ! else ! echo "configure: failed program was:" >&5 ! cat conftest.$ac_ext >&5 ! rm -rf conftest* ! eval "ac_cv_func_$ac_func=no" ! fi ! rm -f conftest* ! fi ! ! if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then ! echo "$ac_t""yes" 1>&6 ! ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` ! cat >> confdefs.h <&6 ! fi ! done ! ! else ! ! echo $ac_n "checking for _hypotl declaration""... $ac_c" 1>&6 ! echo "configure:13525: checking for _hypotl declaration" >&5 ! if test x${glibcpp_cv_func__hypotl_use+set} != xset; then ! if eval "test \"`echo '$''{'glibcpp_cv_func__hypotl_use'+set}'`\" = set"; then ! echo $ac_n "(cached) $ac_c" 1>&6 ! else ! ! ! ac_ext=C ! # CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. ! ac_cpp='$CXXCPP $CPPFLAGS' ! ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' ! ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' ! cross_compiling=$ac_cv_prog_cxx_cross ! ! cat > conftest.$ac_ext < ! int main() { ! _hypotl(0, 0); ! ; return 0; } ! EOF ! if { (eval echo configure:13547: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then ! rm -rf conftest* ! glibcpp_cv_func__hypotl_use=yes ! else ! echo "configure: failed program was:" >&5 ! cat conftest.$ac_ext >&5 ! rm -rf conftest* ! glibcpp_cv_func__hypotl_use=no ! fi ! rm -f conftest* ! ac_ext=c ! # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. ! ac_cpp='$CPP $CPPFLAGS' ! ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' ! ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' ! cross_compiling=$ac_cv_prog_cc_cross ! ! ! fi ! ! fi ! echo "$ac_t""$glibcpp_cv_func__hypotl_use" 1>&6 ! ! if test x$glibcpp_cv_func__hypotl_use = x"yes"; then ! for ac_func in _hypotl ! do ! echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:13574: checking for $ac_func" >&5 ! if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then ! echo $ac_n "(cached) $ac_c" 1>&6 ! else ! cat > conftest.$ac_ext < ! /* Override any gcc2 internal prototype to avoid an error. */ ! /* We use char because int might match the return type of a gcc2 ! builtin and then its argument prototype would still apply. */ ! char $ac_func(); ! ! int main() { ! ! /* The GNU C library defines this for functions which it implements ! to always fail with ENOSYS. Some functions are actually named ! something starting with __ and the normal name is an alias. */ ! #if defined (__stub_$ac_func) || defined (__stub___$ac_func) ! choke me ! #else ! $ac_func(); ! #endif ! ! ; return 0; } ! EOF ! if { (eval echo configure:13602: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 12789,12795 **** echo $ac_n "checking for ldexpl declaration""... $ac_c" 1>&6 ! echo "configure:12793: checking for ldexpl declaration" >&5 if test x${glibcpp_cv_func_ldexpl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_ldexpl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 13628,13634 ---- echo $ac_n "checking for ldexpl declaration""... $ac_c" 1>&6 ! echo "configure:13632: checking for ldexpl declaration" >&5 if test x${glibcpp_cv_func_ldexpl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_ldexpl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 12804,12817 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { ldexpl(0, 0); ; return 0; } EOF ! if { (eval echo configure:12815: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_ldexpl_use=yes else --- 13643,13656 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { ldexpl(0, 0); ; return 0; } EOF ! if { (eval echo configure:13654: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_ldexpl_use=yes else *************** fi *** 12838,12849 **** for ac_func in ldexpl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:12842: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:13681: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 13705,13711 ---- ; return 0; } EOF ! if { (eval echo configure:13709: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 12893,12899 **** else echo $ac_n "checking for _ldexpl declaration""... $ac_c" 1>&6 ! echo "configure:12897: checking for _ldexpl declaration" >&5 if test x${glibcpp_cv_func__ldexpl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__ldexpl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 13732,13738 ---- else echo $ac_n "checking for _ldexpl declaration""... $ac_c" 1>&6 ! echo "configure:13736: checking for _ldexpl declaration" >&5 if test x${glibcpp_cv_func__ldexpl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__ldexpl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 12908,12921 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _ldexpl(0, 0); ; return 0; } EOF ! if { (eval echo configure:12919: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__ldexpl_use=yes else --- 13747,13760 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _ldexpl(0, 0); ; return 0; } EOF ! if { (eval echo configure:13758: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__ldexpl_use=yes else *************** fi *** 12942,12953 **** for ac_func in _ldexpl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:12946: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:13785: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 13809,13815 ---- ; return 0; } EOF ! if { (eval echo configure:13813: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 13000,13006 **** echo $ac_n "checking for logl declaration""... $ac_c" 1>&6 ! echo "configure:13004: checking for logl declaration" >&5 if test x${glibcpp_cv_func_logl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_logl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 13839,13845 ---- echo $ac_n "checking for logl declaration""... $ac_c" 1>&6 ! echo "configure:13843: checking for logl declaration" >&5 if test x${glibcpp_cv_func_logl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_logl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 13015,13021 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 13854,13860 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 13026,13032 **** logl(0); ; return 0; } EOF ! if { (eval echo configure:13030: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_logl_use=yes else --- 13865,13871 ---- logl(0); ; return 0; } EOF ! if { (eval echo configure:13869: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_logl_use=yes else *************** fi *** 13053,13064 **** for ac_func in logl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:13057: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:13896: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 13920,13926 ---- ; return 0; } EOF ! if { (eval echo configure:13924: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 13108,13114 **** else echo $ac_n "checking for _logl declaration""... $ac_c" 1>&6 ! echo "configure:13112: checking for _logl declaration" >&5 if test x${glibcpp_cv_func__logl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__logl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 13947,13953 ---- else echo $ac_n "checking for _logl declaration""... $ac_c" 1>&6 ! echo "configure:13951: checking for _logl declaration" >&5 if test x${glibcpp_cv_func__logl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__logl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 13123,13129 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 13962,13968 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 13134,13140 **** _logl(0); ; return 0; } EOF ! if { (eval echo configure:13138: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__logl_use=yes else --- 13973,13979 ---- _logl(0); ; return 0; } EOF ! if { (eval echo configure:13977: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__logl_use=yes else *************** fi *** 13161,13172 **** for ac_func in _logl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:13165: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:14004: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 14028,14034 ---- ; return 0; } EOF ! if { (eval echo configure:14032: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 13219,13225 **** echo $ac_n "checking for log10l declaration""... $ac_c" 1>&6 ! echo "configure:13223: checking for log10l declaration" >&5 if test x${glibcpp_cv_func_log10l_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_log10l_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 14058,14064 ---- echo $ac_n "checking for log10l declaration""... $ac_c" 1>&6 ! echo "configure:14062: checking for log10l declaration" >&5 if test x${glibcpp_cv_func_log10l_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_log10l_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 13234,13240 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 14073,14079 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 13245,13251 **** log10l(0); ; return 0; } EOF ! if { (eval echo configure:13249: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_log10l_use=yes else --- 14084,14090 ---- log10l(0); ; return 0; } EOF ! if { (eval echo configure:14088: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_log10l_use=yes else *************** fi *** 13272,13283 **** for ac_func in log10l do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:13276: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:14115: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 14139,14145 ---- ; return 0; } EOF ! if { (eval echo configure:14143: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 13327,13333 **** else echo $ac_n "checking for _log10l declaration""... $ac_c" 1>&6 ! echo "configure:13331: checking for _log10l declaration" >&5 if test x${glibcpp_cv_func__log10l_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__log10l_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 14166,14172 ---- else echo $ac_n "checking for _log10l declaration""... $ac_c" 1>&6 ! echo "configure:14170: checking for _log10l declaration" >&5 if test x${glibcpp_cv_func__log10l_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__log10l_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 13342,13348 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 14181,14187 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 13353,13359 **** _log10l(0); ; return 0; } EOF ! if { (eval echo configure:13357: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__log10l_use=yes else --- 14192,14198 ---- _log10l(0); ; return 0; } EOF ! if { (eval echo configure:14196: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__log10l_use=yes else *************** fi *** 13380,13391 **** for ac_func in _log10l do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:13384: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:14223: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 14247,14253 ---- ; return 0; } EOF ! if { (eval echo configure:14251: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 13438,13444 **** echo $ac_n "checking for modfl declaration""... $ac_c" 1>&6 ! echo "configure:13442: checking for modfl declaration" >&5 if test x${glibcpp_cv_func_modfl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_modfl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 14277,14283 ---- echo $ac_n "checking for modfl declaration""... $ac_c" 1>&6 ! echo "configure:14281: checking for modfl declaration" >&5 if test x${glibcpp_cv_func_modfl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_modfl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 13453,13466 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { modfl(0, 0); ; return 0; } EOF ! if { (eval echo configure:13464: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_modfl_use=yes else --- 14292,14305 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { modfl(0, 0); ; return 0; } EOF ! if { (eval echo configure:14303: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_modfl_use=yes else *************** fi *** 13487,13498 **** for ac_func in modfl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:13491: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:14330: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 14354,14360 ---- ; return 0; } EOF ! if { (eval echo configure:14358: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 13542,13548 **** else echo $ac_n "checking for _modfl declaration""... $ac_c" 1>&6 ! echo "configure:13546: checking for _modfl declaration" >&5 if test x${glibcpp_cv_func__modfl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__modfl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 14381,14387 ---- else echo $ac_n "checking for _modfl declaration""... $ac_c" 1>&6 ! echo "configure:14385: checking for _modfl declaration" >&5 if test x${glibcpp_cv_func__modfl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__modfl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 13557,13570 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _modfl(0, 0); ; return 0; } EOF ! if { (eval echo configure:13568: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__modfl_use=yes else --- 14396,14409 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _modfl(0, 0); ; return 0; } EOF ! if { (eval echo configure:14407: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__modfl_use=yes else *************** fi *** 13591,13602 **** for ac_func in _modfl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:13595: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:14434: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 14458,14464 ---- ; return 0; } EOF ! if { (eval echo configure:14462: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 13649,13655 **** echo $ac_n "checking for powl declaration""... $ac_c" 1>&6 ! echo "configure:13653: checking for powl declaration" >&5 if test x${glibcpp_cv_func_powl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_powl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 14488,14494 ---- echo $ac_n "checking for powl declaration""... $ac_c" 1>&6 ! echo "configure:14492: checking for powl declaration" >&5 if test x${glibcpp_cv_func_powl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_powl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 13664,13677 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { powl(0, 0); ; return 0; } EOF ! if { (eval echo configure:13675: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_powl_use=yes else --- 14503,14516 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { powl(0, 0); ; return 0; } EOF ! if { (eval echo configure:14514: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_powl_use=yes else *************** fi *** 13698,13709 **** for ac_func in powl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:13702: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:14541: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 14565,14571 ---- ; return 0; } EOF ! if { (eval echo configure:14569: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 13753,13759 **** else echo $ac_n "checking for _powl declaration""... $ac_c" 1>&6 ! echo "configure:13757: checking for _powl declaration" >&5 if test x${glibcpp_cv_func__powl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__powl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 14592,14598 ---- else echo $ac_n "checking for _powl declaration""... $ac_c" 1>&6 ! echo "configure:14596: checking for _powl declaration" >&5 if test x${glibcpp_cv_func__powl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__powl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 13768,13781 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _powl(0, 0); ; return 0; } EOF ! if { (eval echo configure:13779: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__powl_use=yes else --- 14607,14620 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _powl(0, 0); ; return 0; } EOF ! if { (eval echo configure:14618: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__powl_use=yes else *************** fi *** 13802,13813 **** for ac_func in _powl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:13806: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:14645: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 14669,14675 ---- ; return 0; } EOF ! if { (eval echo configure:14673: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 13860,13866 **** echo $ac_n "checking for sqrtl declaration""... $ac_c" 1>&6 ! echo "configure:13864: checking for sqrtl declaration" >&5 if test x${glibcpp_cv_func_sqrtl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_sqrtl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 14699,14705 ---- echo $ac_n "checking for sqrtl declaration""... $ac_c" 1>&6 ! echo "configure:14703: checking for sqrtl declaration" >&5 if test x${glibcpp_cv_func_sqrtl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_sqrtl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 13875,13881 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 14714,14720 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 13886,13892 **** sqrtl(0); ; return 0; } EOF ! if { (eval echo configure:13890: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_sqrtl_use=yes else --- 14725,14731 ---- sqrtl(0); ; return 0; } EOF ! if { (eval echo configure:14729: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_sqrtl_use=yes else *************** fi *** 13913,13924 **** for ac_func in sqrtl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:13917: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:14756: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 14780,14786 ---- ; return 0; } EOF ! if { (eval echo configure:14784: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 13968,13974 **** else echo $ac_n "checking for _sqrtl declaration""... $ac_c" 1>&6 ! echo "configure:13972: checking for _sqrtl declaration" >&5 if test x${glibcpp_cv_func__sqrtl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__sqrtl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 14807,14813 ---- else echo $ac_n "checking for _sqrtl declaration""... $ac_c" 1>&6 ! echo "configure:14811: checking for _sqrtl declaration" >&5 if test x${glibcpp_cv_func__sqrtl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__sqrtl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 13983,13989 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 14822,14828 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 13994,14000 **** _sqrtl(0); ; return 0; } EOF ! if { (eval echo configure:13998: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__sqrtl_use=yes else --- 14833,14839 ---- _sqrtl(0); ; return 0; } EOF ! if { (eval echo configure:14837: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__sqrtl_use=yes else *************** fi *** 14021,14032 **** for ac_func in _sqrtl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:14025: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:14864: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 14888,14894 ---- ; return 0; } EOF ! if { (eval echo configure:14892: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 14079,14085 **** echo $ac_n "checking for sincosl declaration""... $ac_c" 1>&6 ! echo "configure:14083: checking for sincosl declaration" >&5 if test x${glibcpp_cv_func_sincosl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_sincosl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 14918,14924 ---- echo $ac_n "checking for sincosl declaration""... $ac_c" 1>&6 ! echo "configure:14922: checking for sincosl declaration" >&5 if test x${glibcpp_cv_func_sincosl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_sincosl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 14094,14107 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { sincosl(0, 0, 0); ; return 0; } EOF ! if { (eval echo configure:14105: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_sincosl_use=yes else --- 14933,14946 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { sincosl(0, 0, 0); ; return 0; } EOF ! if { (eval echo configure:14944: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_sincosl_use=yes else *************** fi *** 14128,14139 **** for ac_func in sincosl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:14132: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:14971: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 14995,15001 ---- ; return 0; } EOF ! if { (eval echo configure:14999: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 14183,14189 **** else echo $ac_n "checking for _sincosl declaration""... $ac_c" 1>&6 ! echo "configure:14187: checking for _sincosl declaration" >&5 if test x${glibcpp_cv_func__sincosl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__sincosl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 15022,15028 ---- else echo $ac_n "checking for _sincosl declaration""... $ac_c" 1>&6 ! echo "configure:15026: checking for _sincosl declaration" >&5 if test x${glibcpp_cv_func__sincosl_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__sincosl_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 14198,14211 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _sincosl(0, 0, 0); ; return 0; } EOF ! if { (eval echo configure:14209: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__sincosl_use=yes else --- 15037,15050 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { _sincosl(0, 0, 0); ; return 0; } EOF ! if { (eval echo configure:15048: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__sincosl_use=yes else *************** fi *** 14232,14243 **** for ac_func in _sincosl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:14236: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:15075: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 15099,15105 ---- ; return 0; } EOF ! if { (eval echo configure:15103: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 14290,14296 **** echo $ac_n "checking for finitel declaration""... $ac_c" 1>&6 ! echo "configure:14294: checking for finitel declaration" >&5 if test x${glibcpp_cv_func_finitel_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_finitel_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 15129,15135 ---- echo $ac_n "checking for finitel declaration""... $ac_c" 1>&6 ! echo "configure:15133: checking for finitel declaration" >&5 if test x${glibcpp_cv_func_finitel_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_finitel_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 14305,14311 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 15144,15150 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 14316,14322 **** finitel(0); ; return 0; } EOF ! if { (eval echo configure:14320: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_finitel_use=yes else --- 15155,15161 ---- finitel(0); ; return 0; } EOF ! if { (eval echo configure:15159: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_finitel_use=yes else *************** fi *** 14343,14354 **** for ac_func in finitel do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:14347: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:15186: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 15210,15216 ---- ; return 0; } EOF ! if { (eval echo configure:15214: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 14398,14404 **** else echo $ac_n "checking for _finitel declaration""... $ac_c" 1>&6 ! echo "configure:14402: checking for _finitel declaration" >&5 if test x${glibcpp_cv_func__finitel_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__finitel_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 15237,15243 ---- else echo $ac_n "checking for _finitel declaration""... $ac_c" 1>&6 ! echo "configure:15241: checking for _finitel declaration" >&5 if test x${glibcpp_cv_func__finitel_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func__finitel_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 14413,14419 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H --- 15252,15258 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < #ifdef HAVE_IEEEFP_H *************** int main() { *** 14424,14430 **** _finitel(0); ; return 0; } EOF ! if { (eval echo configure:14428: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__finitel_use=yes else --- 15263,15269 ---- _finitel(0); ; return 0; } EOF ! if { (eval echo configure:15267: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__finitel_use=yes else *************** fi *** 14451,14462 **** for ac_func in _finitel do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:14455: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:15294: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 15318,15324 ---- ; return 0; } EOF ! if { (eval echo configure:15322: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 14510,14516 **** echo $ac_n "checking for _float trig functions""... $ac_c" 1>&6 ! echo "configure:14514: checking for _float trig functions" >&5 if eval "test \"`echo '$''{'glibcpp_cv_func__float_trig_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 15349,15355 ---- echo $ac_n "checking for _float trig functions""... $ac_c" 1>&6 ! echo "configure:15353: checking for _float trig functions" >&5 if eval "test \"`echo '$''{'glibcpp_cv_func__float_trig_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 14524,14530 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { --- 15363,15369 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { *************** int main() { *** 14533,14539 **** _coshf _sinhf _tanhf; do echo "$x (0);"; done` ; return 0; } EOF ! if { (eval echo configure:14537: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__float_trig_use=yes else --- 15372,15378 ---- _coshf _sinhf _tanhf; do echo "$x (0);"; done` ; return 0; } EOF ! if { (eval echo configure:15376: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__float_trig_use=yes else *************** fi *** 14559,14570 **** _coshf _sinhf _tanhf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:14563: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:15402: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 15426,15432 ---- ; return 0; } EOF ! if { (eval echo configure:15430: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 14615,14621 **** echo $ac_n "checking for _float round functions""... $ac_c" 1>&6 ! echo "configure:14619: checking for _float round functions" >&5 if eval "test \"`echo '$''{'glibcpp_cv_func__float_round_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 15454,15460 ---- echo $ac_n "checking for _float round functions""... $ac_c" 1>&6 ! echo "configure:15458: checking for _float round functions" >&5 if eval "test \"`echo '$''{'glibcpp_cv_func__float_round_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 14629,14642 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { `for x in _ceilf _floorf; do echo "$x (0);"; done` ; return 0; } EOF ! if { (eval echo configure:14640: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__float_round_use=yes else --- 15468,15481 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { `for x in _ceilf _floorf; do echo "$x (0);"; done` ; return 0; } EOF ! if { (eval echo configure:15479: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__float_round_use=yes else *************** fi *** 14660,14671 **** for ac_func in _ceilf _floorf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:14664: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:15503: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 15527,15533 ---- ; return 0; } EOF ! if { (eval echo configure:15531: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 14717,14723 **** echo $ac_n "checking for _long double trig functions""... $ac_c" 1>&6 ! echo "configure:14721: checking for _long double trig functions" >&5 if eval "test \"`echo '$''{'glibcpp_cv_func__long_double_trig_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 15556,15562 ---- echo $ac_n "checking for _long double trig functions""... $ac_c" 1>&6 ! echo "configure:15560: checking for _long double trig functions" >&5 if eval "test \"`echo '$''{'glibcpp_cv_func__long_double_trig_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 14731,14737 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { --- 15570,15576 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { *************** int main() { *** 14740,14746 **** _coshl _sinhl _tanhl; do echo "$x (0);"; done` ; return 0; } EOF ! if { (eval echo configure:14744: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__long_double_trig_use=yes else --- 15579,15585 ---- _coshl _sinhl _tanhl; do echo "$x (0);"; done` ; return 0; } EOF ! if { (eval echo configure:15583: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__long_double_trig_use=yes else *************** fi *** 14766,14777 **** _coshl _sinhl _tanhl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:14770: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:15609: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 15633,15639 ---- ; return 0; } EOF ! if { (eval echo configure:15637: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 14822,14828 **** echo $ac_n "checking for _long double round functions""... $ac_c" 1>&6 ! echo "configure:14826: checking for _long double round functions" >&5 if eval "test \"`echo '$''{'glibcpp_cv_func__long_double_round_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 15661,15667 ---- echo $ac_n "checking for _long double round functions""... $ac_c" 1>&6 ! echo "configure:15665: checking for _long double round functions" >&5 if eval "test \"`echo '$''{'glibcpp_cv_func__long_double_round_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 14836,14849 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { `for x in _ceill _floorl; do echo "$x (0);"; done` ; return 0; } EOF ! if { (eval echo configure:14847: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__long_double_round_use=yes else --- 15675,15688 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { `for x in _ceill _floorl; do echo "$x (0);"; done` ; return 0; } EOF ! if { (eval echo configure:15686: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func__long_double_round_use=yes else *************** fi *** 14867,14878 **** for ac_func in _ceill _floorl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:14871: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:15710: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 15734,15740 ---- ; return 0; } EOF ! if { (eval echo configure:15738: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 14927,14933 **** echo $ac_n "checking for main in -lm""... $ac_c" 1>&6 ! echo "configure:14931: checking for main in -lm" >&5 ac_lib_var=`echo m'_'main | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 15766,15772 ---- echo $ac_n "checking for main in -lm""... $ac_c" 1>&6 ! echo "configure:15770: checking for main in -lm" >&5 ac_lib_var=`echo m'_'main | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** else *** 14935,14948 **** ac_save_LIBS="$LIBS" LIBS="-lm $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else --- 15774,15787 ---- ac_save_LIBS="$LIBS" LIBS="-lm $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else *************** else *** 14969,14983 **** echo "$ac_t""no" 1>&6 fi ! for ac_func in nan hypot hypotf atan2f expf copysignf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:14976: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 fi ! for ac_func in nan copysignf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:15815: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 15839,15845 ---- ; return 0; } EOF ! if { (eval echo configure:15843: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 15028,15045 **** USE_COMPLEX_LONG_DOUBLE=no ! if test x$ac_cv_func_atan2l = x"yes" \ ! && test x$ac_cv_func_copysignl = x"yes"; then USE_COMPLEX_LONG_DOUBLE=yes ! for ac_func in hypotl signbitl do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:15038: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:15876: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 15900,15906 ---- ; return 0; } EOF ! if { (eval echo configure:15904: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 15095,15110 **** echo $ac_n "checking for mbstate_t""... $ac_c" 1>&6 ! echo "configure:15099: checking for mbstate_t" >&5 cat > conftest.$ac_ext < int main() { mbstate_t teststate; ; return 0; } EOF ! if { (eval echo configure:15108: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* have_mbstate_t=yes else --- 15933,15948 ---- echo $ac_n "checking for mbstate_t""... $ac_c" 1>&6 ! echo "configure:15937: checking for mbstate_t" >&5 cat > conftest.$ac_ext < int main() { mbstate_t teststate; ; return 0; } EOF ! if { (eval echo configure:15946: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* have_mbstate_t=yes else *************** EOF *** 15126,15142 **** do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 ! echo "configure:15130: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:15140: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* --- 15964,15980 ---- do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 ! echo "configure:15968: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:15978: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* *************** done *** 15165,15181 **** ac_safe=`echo "wctype.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for wctype.h""... $ac_c" 1>&6 ! echo "configure:15169: checking for wctype.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:15179: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* --- 16003,16019 ---- ac_safe=`echo "wctype.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for wctype.h""... $ac_c" 1>&6 ! echo "configure:16007: checking for wctype.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:16017: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* *************** fi *** 15202,15217 **** && test x"$enable_c_mbchar" != xno; then echo $ac_n "checking for WCHAR_MIN and WCHAR_MAX""... $ac_c" 1>&6 ! echo "configure:15206: checking for WCHAR_MIN and WCHAR_MAX" >&5 cat > conftest.$ac_ext < int main() { int i = WCHAR_MIN; int j = WCHAR_MAX; ; return 0; } EOF ! if { (eval echo configure:15215: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* has_wchar_minmax=yes else --- 16040,16055 ---- && test x"$enable_c_mbchar" != xno; then echo $ac_n "checking for WCHAR_MIN and WCHAR_MAX""... $ac_c" 1>&6 ! echo "configure:16044: checking for WCHAR_MIN and WCHAR_MAX" >&5 cat > conftest.$ac_ext < int main() { int i = WCHAR_MIN; int j = WCHAR_MAX; ; return 0; } EOF ! if { (eval echo configure:16053: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* has_wchar_minmax=yes else *************** rm -f conftest* *** 15224,15232 **** echo "$ac_t""$has_wchar_minmax" 1>&6 echo $ac_n "checking for WEOF""... $ac_c" 1>&6 ! echo "configure:15228: checking for WEOF" >&5 cat > conftest.$ac_ext < --- 16062,16070 ---- echo "$ac_t""$has_wchar_minmax" 1>&6 echo $ac_n "checking for WEOF""... $ac_c" 1>&6 ! echo "configure:16066: checking for WEOF" >&5 cat > conftest.$ac_ext < *************** int main() { *** 15235,15241 **** wint_t i = WEOF; ; return 0; } EOF ! if { (eval echo configure:15239: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* has_weof=yes else --- 16073,16079 ---- wint_t i = WEOF; ; return 0; } EOF ! if { (eval echo configure:16077: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* has_weof=yes else *************** rm -f conftest* *** 15251,15262 **** for ac_func in wcslen wmemchr wmemcmp wmemcpy wmemmove wmemset do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:15255: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:16093: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 16117,16123 ---- ; return 0; } EOF ! if { (eval echo configure:16121: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 15314,15325 **** wcscspn wcsspn wcstok wcsftime wcschr wcspbrk wcsrchr wcsstr do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:15318: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:16156: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 16180,16186 ---- ; return 0; } EOF ! if { (eval echo configure:16184: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 15370,15376 **** echo $ac_n "checking for ISO C99 wchar_t support""... $ac_c" 1>&6 ! echo "configure:15374: checking for ISO C99 wchar_t support" >&5 if test x"$has_weof" = xyes && test x"$has_wchar_minmax" = xyes \ && test x"$ac_wfuncs" = xyes; then ac_isoC99_wchar_t=yes --- 16208,16214 ---- echo $ac_n "checking for ISO C99 wchar_t support""... $ac_c" 1>&6 ! echo "configure:16212: checking for ISO C99 wchar_t support" >&5 if test x"$has_weof" = xyes && test x"$has_wchar_minmax" = xyes \ && test x"$ac_wfuncs" = xyes; then ac_isoC99_wchar_t=yes *************** echo "configure:15374: checking for ISO *** 15381,15397 **** ac_safe=`echo "iconv.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for iconv.h""... $ac_c" 1>&6 ! echo "configure:15385: checking for iconv.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:15395: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* --- 16219,16235 ---- ac_safe=`echo "iconv.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for iconv.h""... $ac_c" 1>&6 ! echo "configure:16223: checking for iconv.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:16233: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* *************** fi *** 15415,15431 **** ac_safe=`echo "langinfo.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for langinfo.h""... $ac_c" 1>&6 ! echo "configure:15419: checking for langinfo.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:15429: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* --- 16253,16269 ---- ac_safe=`echo "langinfo.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for langinfo.h""... $ac_c" 1>&6 ! echo "configure:16257: checking for langinfo.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:16267: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* *************** fi *** 15449,15455 **** echo $ac_n "checking for iconv in -liconv""... $ac_c" 1>&6 ! echo "configure:15453: checking for iconv in -liconv" >&5 ac_lib_var=`echo iconv'_'iconv | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 16287,16293 ---- echo $ac_n "checking for iconv in -liconv""... $ac_c" 1>&6 ! echo "configure:16291: checking for iconv in -liconv" >&5 ac_lib_var=`echo iconv'_'iconv | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** else *** 15457,15463 **** ac_save_LIBS="$LIBS" LIBS="-liconv $LIBS" cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else --- 16306,16312 ---- iconv() ; return 0; } EOF ! if { (eval echo configure:16310: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else *************** fi *** 15494,15505 **** for ac_func in iconv_open iconv_close iconv nl_langinfo do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:15498: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:16336: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 16360,16366 ---- ; return 0; } EOF ! if { (eval echo configure:16364: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 15552,15558 **** LIBS="$ac_save_LIBS" echo $ac_n "checking for XPG2 wchar_t support""... $ac_c" 1>&6 ! echo "configure:15556: checking for XPG2 wchar_t support" >&5 if test x"$ac_has_iconv_h" = xyes && test x"$ac_has_langinfo_h" = xyes \ && test x"$ac_XPG2funcs" = xyes; then ac_XPG2_wchar_t=yes --- 16390,16396 ---- LIBS="$ac_save_LIBS" echo $ac_n "checking for XPG2 wchar_t support""... $ac_c" 1>&6 ! echo "configure:16394: checking for XPG2 wchar_t support" >&5 if test x"$ac_has_iconv_h" = xyes && test x"$ac_has_langinfo_h" = xyes \ && test x"$ac_XPG2funcs" = xyes; then ac_XPG2_wchar_t=yes *************** echo "configure:15556: checking for XPG2 *** 15562,15568 **** echo "$ac_t""$ac_XPG2_wchar_t" 1>&6 echo $ac_n "checking for enabled wchar_t specializations""... $ac_c" 1>&6 ! echo "configure:15566: checking for enabled wchar_t specializations" >&5 if test x"$ac_isoC99_wchar_t" = xyes \ && test x"$ac_XPG2_wchar_t" = xyes; then cat >> confdefs.h <<\EOF --- 16400,16406 ---- echo "$ac_t""$ac_XPG2_wchar_t" 1>&6 echo $ac_n "checking for enabled wchar_t specializations""... $ac_c" 1>&6 ! echo "configure:16404: checking for enabled wchar_t specializations" >&5 if test x"$ac_isoC99_wchar_t" = xyes \ && test x"$ac_XPG2_wchar_t" = xyes; then cat >> confdefs.h <<\EOF *************** EOF *** 15584,15590 **** echo $ac_n "checking for strtold declaration""... $ac_c" 1>&6 ! echo "configure:15588: checking for strtold declaration" >&5 if test x${glibcpp_cv_func_strtold_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_strtold_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 16422,16428 ---- echo $ac_n "checking for strtold declaration""... $ac_c" 1>&6 ! echo "configure:16426: checking for strtold declaration" >&5 if test x${glibcpp_cv_func_strtold_use+set} != xset; then if eval "test \"`echo '$''{'glibcpp_cv_func_strtold_use'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** ac_link='${CXX-g++} -o conftest${ac_exee *** 15599,15612 **** cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { strtold(0, 0); ; return 0; } EOF ! if { (eval echo configure:15610: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_strtold_use=yes else --- 16437,16450 ---- cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext < int main() { strtold(0, 0); ; return 0; } EOF ! if { (eval echo configure:16448: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* glibcpp_cv_func_strtold_use=yes else *************** fi *** 15632,15643 **** for ac_func in strtold do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:15636: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:16474: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 16498,16504 ---- ; return 0; } EOF ! if { (eval echo configure:16502: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 15689,15700 **** for ac_func in drand48 do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:15693: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:16531: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 16555,16561 ---- ; return 0; } EOF ! if { (eval echo configure:16559: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** done *** 15746,15752 **** cat > conftest.$ac_ext < --- 16584,16590 ---- cat > conftest.$ac_ext < *************** int main() { *** 15755,15761 **** sigjmp_buf env; while (! sigsetjmp (env, 1)) siglongjmp (env, 1); ; return 0; } EOF ! if { (eval echo configure:15759: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* cat >> confdefs.h <<\EOF #define HAVE_SIGSETJMP 1 --- 16593,16599 ---- sigjmp_buf env; while (! sigsetjmp (env, 1)) siglongjmp (env, 1); ; return 0; } EOF ! if { (eval echo configure:16597: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* cat >> confdefs.h <<\EOF #define HAVE_SIGSETJMP 1 *************** rm -f conftest* *** 15771,15787 **** do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 ! echo "configure:15775: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:15785: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* --- 16609,16625 ---- do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 ! echo "configure:16613: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:16623: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* *************** done *** 15810,15821 **** for ac_func in getpagesize do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:15814: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:16652: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else --- 16676,16682 ---- ; return 0; } EOF ! if { (eval echo configure:16680: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else *************** fi *** 15863,15869 **** done echo $ac_n "checking for working mmap""... $ac_c" 1>&6 ! echo "configure:15867: checking for working mmap" >&5 if eval "test \"`echo '$''{'ac_cv_func_mmap_fixed_mapped'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else --- 16701,16707 ---- done echo $ac_n "checking for working mmap""... $ac_c" 1>&6 ! echo "configure:16705: checking for working mmap" >&5 if eval "test \"`echo '$''{'ac_cv_func_mmap_fixed_mapped'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else *************** else *** 15871,15877 **** ac_cv_func_mmap_fixed_mapped=no else cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_func_mmap_fixed_mapped=yes else --- 16849,16855 ---- } EOF ! if { (eval echo configure:16853: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_func_mmap_fixed_mapped=yes else *************** fi *** 16035,16064 **** fi ! # Now that ctype is determined for all possible targets, we can do this... ! ! ! ! - if test "$NULL_TARGET" = yes; then - NULL_TARGET_TRUE= - NULL_TARGET_FALSE='#' - else - NULL_TARGET_TRUE='#' - NULL_TARGET_FALSE= - fi - if test "$NATIVE" = yes || test "$NULL_TARGET" = yes; then - NATIVE_TRUE= - NATIVE_FALSE='#' - else - NATIVE_TRUE='#' - NATIVE_FALSE= - fi if test "$CANADIAN" = yes; then --- 16873,16888 ---- fi ! # Propagate the target-specific source directories through the build chain. ! OS_INC_SRCDIR=$os_include_dir/bits ! ATOMICITY_INC_SRCDIR=$ATOMICITYH/bits ! LIMITS_INC_SRCDIR=$LIMITSH/bits + # Set up cross-compile flags if test "$CANADIAN" = yes; then *************** rm -f confcache *** 16119,16135 **** ac_safe=`echo "locale.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for locale.h""... $ac_c" 1>&6 ! echo "configure:16123: checking for locale.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:16133: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* --- 16943,16959 ---- ac_safe=`echo "locale.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for locale.h""... $ac_c" 1>&6 ! echo "configure:16947: checking for locale.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:16957: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* *************** if eval "test \"`echo '$ac_cv_header_'$a *** 16147,16165 **** echo "$ac_t""yes" 1>&6 echo $ac_n "checking for LC_MESSAGES""... $ac_c" 1>&6 ! echo "configure:16151: checking for LC_MESSAGES" >&5 if eval "test \"`echo '$''{'ac_cv_val_LC_MESSAGES'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { return LC_MESSAGES ; return 0; } EOF ! if { (eval echo configure:16163: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_val_LC_MESSAGES=yes else --- 16971,16989 ---- echo "$ac_t""yes" 1>&6 echo $ac_n "checking for LC_MESSAGES""... $ac_c" 1>&6 ! echo "configure:16975: checking for LC_MESSAGES" >&5 if eval "test \"`echo '$''{'ac_cv_val_LC_MESSAGES'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { return LC_MESSAGES ; return 0; } EOF ! if { (eval echo configure:16987: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_val_LC_MESSAGES=yes else *************** else *** 16191,16199 **** multilib_arg= fi - - # Generate the various Makefiles, include files, and scripts. - # Needed so that g++ can find the correct include subdir automatically. INTERFACE=v3 --- 17015,17020 ---- *************** esac *** 16215,16227 **** glibcpp_prefixdir=${prefix} echo $ac_n "checking for interface version number""... $ac_c" 1>&6 ! echo "configure:16219: checking for interface version number" >&5 libstdcxx_interface=$INTERFACE echo "$ac_t""$libstdcxx_interface" 1>&6 # Process the option --with-gxx-include-dir= echo $ac_n "checking for --with-gxx-include-dir""... $ac_c" 1>&6 ! echo "configure:16225: checking for --with-gxx-include-dir" >&5 # Check whether --with-gxx-include-dir or --without-gxx-include-dir was given. if test "${with_gxx_include_dir+set}" = set; then withval="$with_gxx_include_dir" --- 17036,17048 ---- glibcpp_prefixdir=${prefix} echo $ac_n "checking for interface version number""... $ac_c" 1>&6 ! echo "configure:17040: checking for interface version number" >&5 libstdcxx_interface=$INTERFACE echo "$ac_t""$libstdcxx_interface" 1>&6 # Process the option --with-gxx-include-dir= echo $ac_n "checking for --with-gxx-include-dir""... $ac_c" 1>&6 ! echo "configure:17046: checking for --with-gxx-include-dir" >&5 # Check whether --with-gxx-include-dir or --without-gxx-include-dir was given. if test "${with_gxx_include_dir+set}" = set; then withval="$with_gxx_include_dir" *************** echo "$ac_t""$gxx_include_dir" 1>&6 *** 16245,16251 **** # Process the option "--enable-version-specific-runtime-libs" echo $ac_n "checking for --enable-version-specific-runtime-libs""... $ac_c" 1>&6 ! echo "configure:16249: checking for --enable-version-specific-runtime-libs" >&5 # Check whether --enable-version-specific-runtime-libs or --disable-version-specific-runtime-libs was given. if test "${enable_version_specific_runtime_libs+set}" = set; then enableval="$enable_version_specific_runtime_libs" --- 17066,17072 ---- # Process the option "--enable-version-specific-runtime-libs" echo $ac_n "checking for --enable-version-specific-runtime-libs""... $ac_c" 1>&6 ! echo "configure:17070: checking for --enable-version-specific-runtime-libs" >&5 # Check whether --enable-version-specific-runtime-libs or --disable-version-specific-runtime-libs was given. if test "${enable_version_specific_runtime_libs+set}" = set; then enableval="$enable_version_specific_runtime_libs" *************** if test x"$glibcpp_toolexecdir" = x"no"; *** 16285,16291 **** fi echo $ac_n "checking for install location""... $ac_c" 1>&6 ! echo "configure:16289: checking for install location" >&5 echo "$ac_t""$gxx_include_dir" 1>&6 --- 17106,17112 ---- fi echo $ac_n "checking for install location""... $ac_c" 1>&6 ! echo "configure:17110: checking for install location" >&5 echo "$ac_t""$gxx_include_dir" 1>&6 *************** echo "$ac_t""$gxx_include_dir" 1>&6 *** 16298,16312 **** # Export all the include and flag information to makefiles. ! # Root level of the include sources. ! GLIBCPP_INCLUDE_DIR='$(top_srcdir)/include' - # Can either use include/c or include/c_std to grab "C" headers. This - # variable is set to the include directory currently in use. - # set with C_INCLUDE_DIR in GLIBCPP_ENABLE_CHEADERS - # Passed down for canadian crosses. ! if test x"$CANADIAN" = xyes; then TOPLEVEL_INCLUDES='-I$(includedir)' fi --- 17119,17129 ---- # Export all the include and flag information to makefiles. ! # Root level of the build directory include sources. ! GLIBCPP_INCLUDES="-I${glibcpp_builddir}/include/${target_alias} -I${glibcpp_builddir}/include" # Passed down for canadian crosses. ! if test x"$CANADIAN" = xyes; then TOPLEVEL_INCLUDES='-I$(includedir)' fi *************** echo "$ac_t""$gxx_include_dir" 1>&6 *** 16314,16339 **** LIBSUPCXX_INCLUDES='-I$(top_srcdir)/libsupc++' ! #if GLIBCPP_NEED_LIBIO ! LIBIO_INCLUDES='-I$(top_builddir)/libio -I$(top_srcdir)/libio' ! #else ! #LIBIO_INCLUDES='-I$(top_srcdir)/libio' ! #endif ! ! #if GLIBCPP_USE_CSHADOW ! # CSHADOW_INCLUDES='-I$(GLIBCPP_INCLUDE_DIR)/std -I$(C_INCLUDE_DIR) \ ! # -I$(top_blddir)/cshadow' ! #else ! CSTD_INCLUDES='-I$(GLIBCPP_INCLUDE_DIR)/std -I$(C_INCLUDE_DIR)' ! #endif # Now, export this to all the little Makefiles.... - - # Optimization flags that are probably a good idea for thrill-seekers. Just --- 17131,17146 ---- LIBSUPCXX_INCLUDES='-I$(top_srcdir)/libsupc++' ! if test x"$need_libio" = xyes; then ! LIBIO_INCLUDES='-I$(top_builddir)/libio -I$(top_srcdir)/libio' ! ! fi # Now, export this to all the little Makefiles.... # Optimization flags that are probably a good idea for thrill-seekers. Just *************** else *** 16354,16367 **** fi ! # This should be done by mkincludedir, but hack around it now. ! blddir=`pwd` ! echo "checking for $blddir/include" ! ! if test ! -d "$blddir/include"; then ! mkdir "$blddir/include" ! fi ! # NB: Multilibs need MULTISUBDIR defined correctly in src/Makefile.am # and libsupc++/Makefile.am so that multilib installs will end up # installed in the correct place. To work around this not being passed --- 17161,17167 ---- fi ! # Generate the various Makefiles, include files, and scripts. # NB: Multilibs need MULTISUBDIR defined correctly in src/Makefile.am # and libsupc++/Makefile.am so that multilib installs will end up # installed in the correct place. To work around this not being passed *************** done *** 16468,16474 **** ac_given_srcdir=$srcdir ac_given_INSTALL="$INSTALL" ! trap 'rm -fr `echo "Makefile src/Makefile libmath/Makefile libio/Makefile libsupc++/Makefile testsuite/Makefile mkcheck testsuite_flags config.h" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 EOF cat >> $CONFIG_STATUS <> $CONFIG_STATUS <> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then --- 17434,17443 ---- cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then *************** fi; done *** 16796,16806 **** EOF cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF --- 17606,17613 ---- EOF cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF *************** done *** 16844,16850 **** EOF cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF test -z "$CONFIG_HEADERS" || echo timestamp > stamp-h - d=include/bits - rm -f $d/gthr.h $d/gthr-single.h $d/gthr-default.h - sed '/^#/s/\([A-Z_][A-Z_]*\)/_GLIBCPP_\1/g' <$d/gthr.h-in >$d/gthr.h - sed 's/\(UNUSED\)/_GLIBCPP_\1/g' <$d/gthr-single.h-in \ - | sed 's/\(GCC[A-Z_]*_H\)/_GLIBCPP_\1/g' >$d/gthr-single.h - sed 's/\(UNUSED\)/_GLIBCPP_\1/g' <$d/gthr-default.h-in \ - | sed 's/\(GCC[A-Z_]*_H\)/_GLIBCPP_\1/g' \ - | sed 's/\([A-Z_]*WEAK\)/_GLIBCPP_\1/g' >$d/gthr-default.h if test -n "$CONFIG_FILES"; then ac_file=Makefile . ${glibcpp_basedir}/../config-ml.in grep '^MULTISUBDIR =' Makefile >> src/Makefile --- 17664,17669 ---- *************** chmod +x $CONFIG_STATUS *** 16880,16901 **** rm -fr confdefs* $ac_clean_files test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1 - - - # Generate bits/c++config.h - # NB: This must be the first generated file as others include it. . . - $srcdir/mkc++config $blddir $srcdir - - # Generate bits/std_limits.h and src/limitsMEMBERS.cc - if test ! -f stamp-limits; then - $srcdir/mknumeric_limits $blddir $srcdir $xcompiling - if test ! -f include/bits/std_limits.h; then - echo "mknumeric_limits failed to execute properly: exiting" - exit 1 - else - touch stamp-limits - fi - fi # Sanity checking & User-visible messages. --- 17678,17683 ---- diff -Nrc3pad gcc-3.0/libstdc++-v3/configure.in gcc-3.0.1/libstdc++-v3/configure.in *** gcc-3.0/libstdc++-v3/configure.in Thu Jun 14 01:47:35 2001 --- gcc-3.0.1/libstdc++-v3/configure.in Mon Aug 13 15:22:25 2001 *************** AC_CANONICAL_SYSTEM *** 36,41 **** --- 36,45 ---- target_alias=${target_alias-$target} AC_SUBST(target_alias) + # Will set LN_S to either 'ln -s' or 'ln'. With autoconf 2.50+, can also + # be 'cp -p' if linking isn't available. + AC_PROG_LN_S + # We use these options to decide which functions to include. AC_ARG_WITH(target-subdir, [ --with-target-subdir=SUBDIR *************** AC_SUBST(enable_shared) *** 53,60 **** AC_SUBST(enable_static) GLIBCPP_CHECK_GNU_MAKE - - AM_CONFIG_HEADER(config.h) # Check for c++ or library specific bits that don't require linking. --- 57,62 ---- *************** GLIBCPP_ENABLE_THREADS *** 72,93 **** GLIBCPP_ENABLE_CXX_FLAGS([none]) GLIBCPP_ENABLE_SJLJ_EXCEPTIONS ! if test -n "$with_cross_host"; then ! # We are being configured with a cross compiler. AC_REPLACE_FUNCS ! # may not work correctly, because the compiler may not be able to ! # link executables. ! xcompiling=1 ! NATIVE=no # If Canadian cross, then don't pick up tools from the build # directory. ! if test x"$build" != x"$with_cross_host" && x"$build" != x"$target"; then CANADIAN=yes - NULL_TARGET=yes else CANADIAN=no - NULL_TARGET=no fi case "$target_alias" in --- 74,94 ---- GLIBCPP_ENABLE_CXX_FLAGS([none]) GLIBCPP_ENABLE_SJLJ_EXCEPTIONS ! if test -n "$with_cross_host" || test x"$build" != x"$host"; then ! # We are being configured with some form of cross compiler. ! # mknumeric_limits may not work correctly, either because the ! # compiler may not run on this machine, may not be able to link ! # executables, or may produce executables we can't run on this ! # machine. ! GLIBCPP_IS_CROSS_COMPILING=1 # If Canadian cross, then don't pick up tools from the build # directory. ! if test -n "$with_cross_host" && test x"$build" != x"$with_cross_host"; then CANADIAN=yes else CANADIAN=no fi case "$target_alias" in *************** else *** 197,206 **** # We are being configured natively. We can do more elaborate tests # that include AC_TRY_COMPILE now, as the linker is assumed to be # working. ! xcompiling=0 ! NATIVE=yes CANADIAN=no - NULL_TARGET=no # Check for available headers. AC_CHECK_HEADERS([nan.h ieeefp.h endian.h sys/isa_defs.h machine/endian.h \ --- 198,205 ---- # We are being configured natively. We can do more elaborate tests # that include AC_TRY_COMPILE now, as the linker is assumed to be # working. ! GLIBCPP_IS_CROSS_COMPILING=0 CANADIAN=no # Check for available headers. AC_CHECK_HEADERS([nan.h ieeefp.h endian.h sys/isa_defs.h machine/endian.h \ *************** else *** 222,238 **** AC_FUNC_MMAP fi ! # Now that ctype is determined for all possible targets, we can do this... ! AC_LINK_FILES($os_include_dir/bits/ctype_base.h, \ ! include/bits/ctype_base.h) ! AC_LINK_FILES($os_include_dir/bits/ctype_inline.h, \ ! include/bits/ctype_inline.h) ! AC_LINK_FILES($os_include_dir/bits/ctype_noninline.h, \ ! include/bits/ctype_noninline.h) ! AC_LINK_FILES($ATOMICITYH/bits/atomicity.h, include/bits/atomicity.h) ! AM_CONDITIONAL(NULL_TARGET, test "$NULL_TARGET" = yes) ! AM_CONDITIONAL(NATIVE, test "$NATIVE" = yes || test "$NULL_TARGET" = yes) AM_CONDITIONAL(CANADIAN, test "$CANADIAN" = yes) AC_CACHE_SAVE --- 221,236 ---- AC_FUNC_MMAP fi ! # Propagate the target-specific source directories through the build chain. ! OS_INC_SRCDIR=$os_include_dir/bits ! ATOMICITY_INC_SRCDIR=$ATOMICITYH/bits ! LIMITS_INC_SRCDIR=$LIMITSH/bits ! AC_SUBST(OS_INC_SRCDIR) ! AC_SUBST(ATOMICITY_INC_SRCDIR) ! AC_SUBST(LIMITS_INC_SRCDIR) ! # Set up cross-compile flags ! AC_SUBST(GLIBCPP_IS_CROSS_COMPILING) AM_CONDITIONAL(CANADIAN, test "$CANADIAN" = yes) AC_CACHE_SAVE *************** else *** 244,252 **** multilib_arg= fi - - # Generate the various Makefiles, include files, and scripts. - # Needed so that g++ can find the correct include subdir automatically. INTERFACE=v3 --- 242,247 ---- *************** else *** 265,284 **** fi AC_SUBST(LIBSUPCXX_PICFLAGS) ! # This should be done by mkincludedir, but hack around it now. ! blddir=`pwd` ! echo "checking for $blddir/include" ! ! if test ! -d "$blddir/include"; then ! mkdir "$blddir/include" ! fi ! # NB: Multilibs need MULTISUBDIR defined correctly in src/Makefile.am # and libsupc++/Makefile.am so that multilib installs will end up # installed in the correct place. To work around this not being passed # down from config-ml.in -> top_srcdir/Makefile.am -> # top_srcdir/{src,libsupc++}/Makefile.am, manually append it here. ! AC_OUTPUT(Makefile src/Makefile libmath/Makefile libio/Makefile libsupc++/Makefile testsuite/Makefile mkcheck testsuite_flags, [if test -n "$CONFIG_FILES"; then ac_file=Makefile . ${glibcpp_basedir}/../config-ml.in grep '^MULTISUBDIR =' Makefile >> src/Makefile --- 260,275 ---- fi AC_SUBST(LIBSUPCXX_PICFLAGS) ! # Generate the various Makefiles, include files, and scripts. # NB: Multilibs need MULTISUBDIR defined correctly in src/Makefile.am # and libsupc++/Makefile.am so that multilib installs will end up # installed in the correct place. To work around this not being passed # down from config-ml.in -> top_srcdir/Makefile.am -> # top_srcdir/{src,libsupc++}/Makefile.am, manually append it here. ! AC_OUTPUT(Makefile \ ! include/Makefile src/Makefile \ ! libmath/Makefile libio/Makefile libsupc++/Makefile \ ! testsuite/Makefile mkcheck testsuite_flags, [if test -n "$CONFIG_FILES"; then ac_file=Makefile . ${glibcpp_basedir}/../config-ml.in grep '^MULTISUBDIR =' Makefile >> src/Makefile *************** glibcpp_basedir=${glibcpp_basedir} *** 297,318 **** CC="${CC}" CXX="${CXX}" ) - - - # Generate bits/c++config.h - # NB: This must be the first generated file as others include it. . . - $srcdir/mkc++config $blddir $srcdir - - # Generate bits/std_limits.h and src/limitsMEMBERS.cc - if test ! -f stamp-limits; then - $srcdir/mknumeric_limits $blddir $srcdir $xcompiling - if test ! -f include/bits/std_limits.h; then - echo "mknumeric_limits failed to execute properly: exiting" - exit 1 - else - touch stamp-limits - fi - fi # Sanity checking & User-visible messages. --- 288,293 ---- diff -Nrc3pad gcc-3.0/libstdc++-v3/configure.target gcc-3.0.1/libstdc++-v3/configure.target *** gcc-3.0/libstdc++-v3/configure.target Thu May 17 22:46:00 2001 --- gcc-3.0.1/libstdc++-v3/configure.target Sat Aug 18 12:23:13 2001 *************** case "${target_cpu}" in *** 39,47 **** --- 39,56 ---- i486 | i586 | i686 | i786) cpu_include_dir="config/cpu/i486" ;; + m68k | m680[246]0) + cpu_include_dir="config/cpu/m68k" + ;; + mips*) + cpu_include_dir="config/cpu/mips" + ;; powerpc | rs6000) cpu_include_dir="config/cpu/powerpc" ;; + s390 | s390x) + cpu_include_dir="config/cpu/s390" + ;; sparc64 | ultrasparc) cpu_include_dir="config/cpu/sparc/sparc64" ;; *************** case "${target}" in *** 120,124 **** --- 129,149 ---- ;; *) ATOMICITYH=$cpu_include_dir + ;; + esac + + # Set LIMITSH to the directory where the configuration-dependent + # limits.h can be found. + # THIS TABLE IS SORTED. KEEP IT THAT WAY. + + case "${target}" in + i?86-*-*) + LIMITSH=config/cpu/i386 + ;; + powerpc-*-*) + LIMITSH=config/cpu/powerpc + ;; + *) + LIMITSH=config/cpu/generic ;; esac diff -Nrc3pad gcc-3.0/libstdc++-v3/docs/doxygen/run_doxygen gcc-3.0.1/libstdc++-v3/docs/doxygen/run_doxygen *** gcc-3.0/libstdc++-v3/docs/doxygen/run_doxygen Mon Jun 11 06:06:44 2001 --- gcc-3.0.1/libstdc++-v3/docs/doxygen/run_doxygen Wed Jul 11 12:37:57 2001 *************** *** 5,11 **** # Synopsis: run_doxygen --mode=[user|maint] v3srcdir v3builddir # # Originally hacked together by Phil Edwards ! # $Id: run_doxygen,v 1.1.4.2 2001/06/11 13:06:44 pme Exp $ # We can check now that the version of doxygen is >= this variable. --- 5,11 ---- # Synopsis: run_doxygen --mode=[user|maint] v3srcdir v3builddir # # Originally hacked together by Phil Edwards ! # $Id: run_doxygen,v 1.1.4.3 2001/07/11 19:37:57 pme Exp $ # We can check now that the version of doxygen is >= this variable. *************** parse_options() { *** 75,81 **** blank= Id=is echo You expect this dinky script to track a version? Okay, here ! echo it $Id: run_doxygen,v 1.1.4.2 2001/06/11 13:06:44 pme Exp $blank exit 0 ;; *) --- 75,81 ---- blank= Id=is echo You expect this dinky script to track a version? Okay, here ! echo it $Id: run_doxygen,v 1.1.4.3 2001/07/11 19:37:57 pme Exp $blank exit 0 ;; *) *************** case x"$mode" in *** 115,121 **** exit 1 ;; esac ! test -d $outdir || (mkdir -p $outdir ; chmod u+w $outdir) ( set -e cd $srcdir --- 115,123 ---- exit 1 ;; esac ! rm -rf $outdir ! mkdir -p $outdir ! chmod u+w $outdir ( set -e cd $srcdir diff -Nrc3pad gcc-3.0/libstdc++-v3/docs/doxygen/user.cfg.in gcc-3.0.1/libstdc++-v3/docs/doxygen/user.cfg.in *** gcc-3.0/libstdc++-v3/docs/doxygen/user.cfg.in Wed May 30 14:59:29 2001 --- gcc-3.0.1/libstdc++-v3/docs/doxygen/user.cfg.in Wed Jul 11 12:37:57 2001 *************** SORT_MEMBER_DOCS = YES *** 197,203 **** # member in the group (if any) for the other members of the group. By default # all members of a group must be documented explicitly. ! DISTRIBUTE_GROUP_DOC = NO # The TAB_SIZE tag can be used to set the number of spaces in a tab. # Doxygen uses this value to replace tabs by spaces in code fragments. --- 197,203 ---- # member in the group (if any) for the other members of the group. By default # all members of a group must be documented explicitly. ! DISTRIBUTE_GROUP_DOC = YES # The TAB_SIZE tag can be used to set the number of spaces in a tab. # Doxygen uses this value to replace tabs by spaces in code fragments. *************** WARN_LOGFILE = *** 305,311 **** INPUT = docs/doxygen \ libsupc++ \ include \ ! src # If the value of the INPUT tag contains directories, you can use the # FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp --- 305,326 ---- INPUT = docs/doxygen \ libsupc++ \ include \ ! src \ ! libsupc++/exception libsupc++/new libsupc++/typeinfo include/ext/hash_map \ ! include/ext/hash_set include/ext/rope include/ext/slist include/std/algorithm \ ! include/std/bitset include/std/cassert include/std/cctype \ ! include/std/cerrno include/std/cfloat include/std/ciso646 include/std/climits \ ! include/std/clocale include/std/cmath include/std/complex include/std/csetjmp \ ! include/std/csignal include/std/cstdarg include/std/cstddef \ ! include/std/cstdio include/std/cstdlib include/std/cstring \ ! include/std/ctime include/std/cwchar include/std/cwctype include/std/deque \ ! include/std/fstream include/std/functional include/std/iomanip \ ! include/std/ios include/std/iosfwd include/std/iostream include/std/istream \ ! include/std/iterator include/std/limits include/std/list include/std/locale \ ! include/std/map include/std/memory include/std/numeric include/std/ostream \ ! include/std/queue include/std/set include/std/sstream include/std/stack \ ! include/std/stdexcept include/std/streambuf include/std/string \ ! include/std/utility include/std/valarray include/std/vector # If the value of the INPUT tag contains directories, you can use the # FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp diff -Nrc3pad gcc-3.0/libstdc++-v3/docs/html/17_intro/porting-howto.html gcc-3.0.1/libstdc++-v3/docs/html/17_intro/porting-howto.html *** gcc-3.0/libstdc++-v3/docs/html/17_intro/porting-howto.html Sat Dec 9 20:03:09 2000 --- gcc-3.0.1/libstdc++-v3/docs/html/17_intro/porting-howto.html Wed Jul 11 17:04:16 2001 *************** *** 1,726 **** ! ! Libstdc++-porting-howto ! ! ! !
!
!

! Libstdc++-porting-howto !

!

Felix Natter

!

This document can be distributed under the FDL ! (www.gnu.org) !

!

what kind of a date ? I don't drink !

!
! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
Revision History
Revision 0.5Thu Jun 1 13:06:50 2000fnatter
First docbook-version.
Revision 0.8Sun Jul 30 20:28:40 2000fnatter
First released version using docbook-xml + second upload to libstdc++-page. !
Revision 0.9Wed Sep 6 02:59:32 2000fnatter
5 new sections.
!
!
!

! Abstract !

!

! Some notes on porting applications from libstdc++-2.90 (or earlier ! versions) to libstdc++-v3. Not speaking in terms of the GNU libstdc++ ! implementations, this means porting from earlier versions of the ! C++-Standard to ISO 14882. !

!
!
!
! !

! In the following, when I say portable, I will refer to "portable among ISO ! 14882-implementations". On the other hand, if I say "backportable" or ! "conservative", I am talking about "compiles with older ! libstdc++-implementations".

!
!

! 1. Namespace std:: !

!

! The latest C++-standard (ISO-14882) requires that the standard ! C++-library is defined in namespace std::. Thus, in order to use ! classes from the standard C++-library, you can do one of three ! things: !

!
    !
  • ! !

    wrap your code in namespace std { ! ... } => This is not an option because only symbols ! from the standard c++-library are defined in namespace std::. !

    !
  • !
  • ! !

    put a kind of ! using-declaration in your source (either ! using namespace std; or i.e. using ! std::string;) => works well for source-files, but ! cannot be used in header-files. !

    !
  • !
  • ! !

    use a fully qualified name for ! each libstdc++-symbol (i.e. std::string, ! std::cout) => can always be used !

    !
  • !
!
!

!

! Because there are many compilers which still use an implementation ! that does not have the standard C++-library in namespace ! std::, some care is required to support these as ! well. !

!

! Namespace back-portability-issues are generally not a problem with ! g++, because versions of g++ that do not have libstdc++ in ! std:: use -fno-honor-std ! (ignore std::, :: = std::) by ! default. That is, the responsibility for enabling or disabling ! std:: is on the user; the maintainer does not have ! to care about it. This probably applies to some other compilers as ! well. !

!

! The following sections list some possible solutions to support compilers ! that cannot ignore std::. !

!
!

! 1.1.1. Using namespace ! composition if the project uses a separate ! namespace !

!

! Gtk-- defines ! most of its classes in namespace Gtk::. Thus, it was possible to ! adapt Gtk-- to namespace std:: by using a C++-feature called ! namespace composition. This is what happens if ! you put a using-declaration into a ! namespace-definition: the imported symbol(s) gets imported into the ! currently active namespace(s). For example: !

! 		  namespace Gtk {
! 		  using std::string;
! 		  class Window { ... }
! 		  }
! 		
! In this example, std::string gets imported into ! namespace Gtk::. The result is that you don't have to use ! std::string in this header, but still ! std::string does not get imported into ! user-space (the global namespace ::) unless the user does ! using namespace Gtk; (which is not recommended ! practice for Gtk--, so it is not a problem). Additionally, the ! using-declarations are wrapped in macros that ! are set based on autoconf-tests to either "" or i.e. using ! std::string; (depending on whether the system has ! libstdc++ in std:: or not). (ideas from ! <llewelly@dbritsch.dsl.xmission.com>, Karl Nelson ! <kenelson@ece.ucdavis.edu>) !

!
!
!

! 1.1.2. Defining an empty namespace std !

!

! By defining an (empty) namespace std:: before ! using it, you avoid getting errors on systems where no part of the ! library is in namespace std: !

! 		  namespace std { }
! 		  using namespace std;
! 		
!

!
!
!

! 1.1.3. Avoid to use fully qualified names ! (i.e. std::string) !

!

! If some compilers complain about using ! std::string;, and if the "hack" for gtk-- mentioned above ! does not work, then it might be a good idea to define a macro ! NS_STD, which is defined to either "" or "std" ! based on an autoconf-test. Then you should be able to use ! NS_STD::string, which will evaluate to ! ::string ("string in the global namespace") on ! systems that do not put string in std::. (This is untested) !

!
!
!

! 1.1.4. How some open-source-projects deal ! with this !

!

! This information was gathered around May 2000. It may not be correct ! by the time you read this. !

!
!

! Table 1. Namespace std:: in Open-Source programs !

! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
clanlibusual
pingususual
mozillausual
mnemonicnone
! libsigc++conservative-impl
!
!
!

! Table 2. Notations for categories !

! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
usualmostly fully qualified names and some ! using-declarations (but not in headers)
noneno namespace std at all
conservative-implwrap all ! namespace-handling in macros to support compilers without ! namespace-support (no libstdc++ used in headers)
!
!

! As you can see, this currently lacks an example of a project which ! uses libstdc++-symbols in headers in a back-portable way (except ! for Gtk--: see the ). !

!
!
!
!

! 2. there is no ios::nocreate/ios::noreplace ! in ISO 14882 !

!

! I have seen ios::nocreate being used for input-streams, ! most probably because the authors thought it would be more correct ! to specify nocreate "explicitly". So you can simply leave it out ! for input-streams. !

!

! For output streams, "nocreate" is probably the default, unless you ! specify std::ios::trunc ? To be safe, you can open ! the file for reading, check if it has been opened, and then decide ! whether you want to create/replace or not. To my knowledge, even ! older implementations support app, ! ate and trunc (except for ! app ?). !

!
!
!

! 3. stream::attach(int ! fd) is not in the standard any more !

!

! When using libstdc++-v3, you can use !

!

!

! !
! 		  #include <fstream>
! 		
!

! int basic_filebuf(__fd, __name, __mode);
int __fd;
const char* __name;
ios_base::openmode __mode;
!

!

!

!
! For a portable solution (if there is one), you need to implement a ! subclass of streambuf which opens a file given a ! descriptor, and then pass an instance of this to the ! stream-constructor (from the Josuttis-book). !

!
!
!

! 4. The new headers !

!

! All new headers can be seen in this source-code. !

!

! I think it is a problem for libstdc++-v3 to add links or wrappers ! for the old headers, because the implementation has changed, and ! the header name-changes indicate this. It might be preferable to ! use the new headers and tell users of old compilers that they ! should create links (which is what they will have to do sometime ! anyway). !

!
!

! 4.4.1. New headers replacing C-headers !

!

! You should not use the C-headers (except for system-level headers) ! from C++ programs. Instead, you should use a set of headers that ! are named by prepending 'c' and, as usual, ommiting the extension ! (.h). For example, instead of using <math.h>, you should use <cmath>. The standard ! specifies that if you include the C-style header (<math.h> in this case), the symbols ! will be available both in the global namespace and in namespace ! std:: (libstdc++-v3, version 2.90.8 currently ! puts them in std:: only) On the other hand, if ! you include only the new header (i.e. <pcmath>), the symbols will only be ! defined in namespace std:: (and macros will be ! converted to inline-functions). !

!

! For more information on this, and for information on how the GNU ! C++ implementation reuses ("shadows") the C library-functions, have ! a look at ! www.cantrip.org. !

!
!
!

! 4.4.2. ! <fstream> does ! not define std::cout, ! std::cin etc. !

!

! In previous versions of the standard, <fstream.h>, <ostream.h> and <istream.h> used to define ! cout, cin and so on. Because ! of the templatized iostreams in libstdc++-v3, you need to include ! <iostream> ! explicitly to define these. !

!
!
!
!

! 5. Iterators !

!

! The following are not proper uses of iterators, but may be working ! fixes for existing uses of iterators. !

!
    !
  • ! !

    you cannot do ! ostream::operator<<(iterator) to ! print the address of the iterator => use ! operator<< &*iterator instead ? !

    !
  • !
  • ! !

    you cannot clear an iterator's reference ! (iterator = 0) => use ! iterator = iterator_type(); ? !

    !
  • !
  • ! !

    ! if (iterator) won't work any ! more => use if (iterator != iterator_type()) ! ?

    !
  • !
!
!

!
!
!

! 6. ! Libc-macros (i.e. isspace from ! <cctype>) !

!

! Glibc 2.0.x and 2.1.x define the <ctype.h> -functionality as ! macros (isspace, isalpha etc.). Libstdc++-v3 "shadows" these macros ! as described in the . !

!

! Older implementations of libstdc++ (g++-2 for egcs 1.x and g++-3 ! for gcc 2.95.2), however, keep these functions as macros, and so it ! is not back-portable to use fully qualified names. For example: !

! 		#include <cctype>
! 		int main() { std::isspace('X'); }
! 	  
! will result in something like this (unless using g++-v3): !
! 		std:: (__ctype_b[(int) ( ( 'X' ) )] & (unsigned short int)
! 		_ISspace )  ;
! 	  
!

!

! One solution I can think of is to test for -v3 using ! autoconf-macros, and define macros for each of the C-functions ! (maybe that is possible with one "wrapper" macro as well ?).

!

! Another solution which would fix g++ is to tell the user to modify a ! header-file so that g++-2 (egcs 1.x) and g++-3 (gcc 2.95.2) define a ! macro which tells <ctype.h> to define functions ! instead of macros: !

! 		// This keeps isalnum, et al from being propagated as macros.
! 		#if __linux__
! 		#define __NO_CTYPE 1
! 		#endif
  
! 		[ now include <ctype.h> ]
! 	  
!

!

! Another problem arises if you put a using namespace ! std; declaration at the top, and include <ctype.h>. This will result in ! ambiguities between the definitions in the global namespace ! (<ctype.h>) and the ! definitions in namespace std:: ! (<cctype>). !

!

! The solution to this problem was posted to the libstdc++-v3 ! mailing-list: ! Benjamin Kosnik <bkoz@redhat.com> writes: ! " ! --enable-cshadow-headers is currently broken. As a result, shadow ! headers are not being searched.... ! " !

!
!
!

! 7. ! State of streams ! !

!

! At least some older implementations don't have ! std::ios_base, so you should use ! std::ios::badbit, std::ios::failbit ! and std::ios::eofbit and ! std::ios::goodbit. !

!
!
!

! 8. vector::at is missing (i.e. gcc 2.95.2) !

!

! For my use, I added it to ! prefix/include/g++-3/stl_vector.h: !

!   reference operator[](size_type __n) { return *(begin() + __n); }
!   reference at(size_type __n) {
!     if (begin() + __n >= end())
!       throw out_of_range("vector::at");
!     return *(begin() + __n);
!   }
!   const_reference operator[](size_type __n) const { return *(begin() + __n); }
!   const_reference at(size_type __n) const {
!     if (begin() + __n >= end())
!       throw out_of_range("vector::at");
!     return *(begin() + __n);
!   }
! 	  
!

!
!
!

! 9. Using std::char_traits<char>::eof() !

!

!

! 		#ifdef HAVE_CHAR_TRAITS
! 		#define CPP_EOF std::char_traits<char>::eof()
! 		#else
! 		#define CPP_EOF EOF
! 		#endif
! 	  
!

!
!
!

! 10. Using string::clear()/string::erase() !

!

! There are two functions for deleting the contents of a string: ! clear and erase (the latter ! returns the string). !

! 		void 
! 		clear() { _M_mutate(0, this->size(), 0); }
! 	  
!
!       basic_string& 
!       erase(size_type __pos = 0, size_type __n = npos)
!       { 
! 		return this->replace(_M_check(__pos), _M_fold(__pos, __n),
! 			     _M_data(), _M_data()); 
!       }
! 	  
! The implementation of erase seems to be more ! complicated (from libstdc++-v3), but clear is not ! implemented in gcc 2.95.2's libstdc++, so you should use ! erase (which is probably faster than ! operator=(charT*)). !

!
!
!

! 11. Using stringstream's !

!

! Libstdc++-v3 includes the new ! i/ostringstream-classes, (<sstream>), but with older ! implementations you still have to use i/ostrstream ! (<strstream>): !

! 		#ifdef HAVE_SSTREAM
! 		#include <sstream>
! 		#else
! 		#include <strstream>
! 		#endif
! 	  
!
!
    !
  • ! !

    strstream is considered to be ! deprecated !

    !
  • !
  • ! !

    strstream is limited to ! char !

    !
  • !
  • ! !

    with ostringstream you don't ! have to take care of terminating the string or freeing its ! memory !

    !
  • !
  • ! !

    istringstream can be re-filled ! (clear(); str(input);) !

    !
  • !
!
!

!

! You can then use output-stringstreams like this: !

! 		#ifdef HAVE_SSTREAM
! 		std::ostringstream oss;
! 		#else
! 		std::ostrstream oss;
! 		#endif
! 		oss << "Name=" << m_name << ", number=" << m_number << std::endl;
! 		...
! 		#ifndef HAVE_SSTREAM
! 		oss << std::ends; // terminate the char*-string
! 		#endif
! 		// str() returns char* for ostrstream and a string for ostringstream
! 		// this also causes ostrstream to think that the buffer's memory
! 		// is yours
! 		m_label.set_text(oss.str());
! 		#ifndef HAVE_SSTREAM
! 		// let the ostrstream take care of freeing the memory
! 		oss.freeze(false);
! 		#endif
! 	  
!

!

! Input-stringstreams can be used similarly: !

! 		std::string input;
! 		...
! 		#ifdef HAVE_SSTREAM
! 		std::istringstream iss(input);
! 		#else
! 		std::istrstream iss(input.c_str());
! 		#endif
! 		int i;
! 		iss >> i; 
! 	  
! One (the only?) restriction is that an istrstream cannot be re-filled: !
! 		std::istringstream iss(numerator);
! 		iss >> m_num;
! 		// this is not possible with istrstream
! 		iss.clear();
! 		iss.str(denominator);
! 		iss >> m_den;
! 	  
! If you don't care about speed, you can put these conversions in ! a template-function: !
! 		template <class X>
! 		void fromString(const string& input, X& any)
! 		{
! 		#ifdef HAVE_SSTREAM
! 		std::istringstream iss(input);
! 		#else
! 		std::istrstream iss(input.c_str());
! 		#endif
! 		X temp;
! 		iss >> temp;
! 		if (iss.fail())
! 		   throw runtime_error(..)
! 		any = temp;
! 		}
! 	  
!

!

! I have read the Josuttis book on Standard C++, so some information ! comes from there. Additionally, there is information in ! "info iostream", which covers the old implementation that gcc 2.95.2 ! uses. !

!
!
!

! 12. About... !

!

! Please send any experience, additions, corrections or questions to ! fnatter@gmx.net or for ! discussion to the libstdc++-v3-mailing-list. !

!
!
! --- 1,773 ---- + ! ! ! Libstdc++-porting-howto ! ! !
!
!

! Libstdc++-porting-howto

!

Felix Natter

!
!

Legal Notice

!

This document can be distributed under the FDL ! (www.gnu.org) !

!
!

Tue Jun 5 20:07:49 2001

!
! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
Revision History
Revision 0.5Thu Jun 1 13:06:50 2000fnatter
First docbook-version.
Revision 0.8Sun Jul 30 20:28:40 2000fnatter
First released version using docbook-xml + second upload to libstdc++-page. !
Revision 0.9Wed Sep 6 02:59:32 2000fnatter
5 new sections.
Revision 0.9.1Sat Sep 23 14:20:15 2000fnatter
added information about why file-descriptors are not in the ! standard
Revision 0.9.2Tue Jun 5 20:07:49 2001fnatter
! a fix, added hint on increased portability of C-shadow-headers, ! added autoconf-test HAVE_CONTAINER_AT !
Revision 0.9.3Fri Jun 29 16:15:56 2001fnatter
! changed signature of nonstandard filebuf-constructor and ! update the section on filebuf::attach to point to ../ext/howto.html, ! added link to ../21/strings/howto.html ! in sec-stringstream, changed <link>-tags to have content ! (so that these links work), ! replace "user-space" by "global namespace" ! add note about gcc 3.0 and shadow-headers ! add section about ostream::form and istream::scan ! sec-vector-at: remove hint to modify headers ! fix spelling error in sec-stringstream !
!
!

! Abstract !

!

! Some notes on porting applications from libstdc++-2.90 (or earlier ! versions) to libstdc++-v3. Not speaking in terms of the GNU libstdc++ ! implementations, this means porting from earlier versions of the ! C++-Standard to ISO 14882. !

!
!
!
! !

! In the following, when I say portable, I will refer to "portable among ISO ! 14882-implementations". On the other hand, if I say "backportable" or ! "conservative", I am talking about "compiles with older ! libstdc++-implementations".

!
!

! 1. Namespace std:: !

!

! The latest C++-standard (ISO-14882) requires that the standard ! C++-library is defined in namespace std::. Thus, in order to use ! classes from the standard C++-library, you can do one of three ! things: !

    !
  • ! wrap your code in namespace std { ! ... } => This is not an option because only symbols ! from the standard c++-library are defined in namespace std::. !

  • !
  • ! put a kind of ! using-declaration in your source (either ! using namespace std; or i.e. using ! std::string;) => works well for source-files, but ! cannot be used in header-files. !

  • !
  • ! use a fully qualified name for ! each libstdc++-symbol (i.e. std::string, ! std::cout) => can always be used !

  • !
!

!

! Because there are many compilers which still use an implementation ! that does not have the standard C++-library in namespace ! std::, some care is required to support these as ! well. !

!

! Namespace back-portability-issues are generally not a problem with ! g++, because versions of g++ that do not have libstdc++ in ! std:: use -fno-honor-std ! (ignore std::, :: = std::) by ! default. That is, the responsibility for enabling or disabling ! std:: is on the user; the maintainer does not have ! to care about it. This probably applies to some other compilers as ! well. !

!

! The following sections list some possible solutions to support compilers ! that cannot ignore std::. !

!
!

! 1.1.1. Using namespace ! composition if the project uses a separate ! namespace !

!

! Gtk-- defines ! most of its classes in namespace Gtk::. Thus, it was possible to ! adapt Gtk-- to namespace std:: by using a C++-feature called ! namespace composition. This is what happens if ! you put a using-declaration into a ! namespace-definition: the imported symbol(s) gets imported into the ! currently active namespace(s). For example: !

! 	  namespace Gtk {
! 	  using std::string;
! 	  class Window { ... }
! 	  }
! 	
! In this example, std::string gets imported into ! namespace Gtk::. The result is that you don't have to use ! std::string in this header, but still ! std::string does not get imported into ! the global namespace (::) unless the user does ! using namespace Gtk; (which is not recommended ! practice for Gtk--, so it is not a problem). Additionally, the ! using-declarations are wrapped in macros that ! are set based on autoconf-tests to either "" or i.e. using ! std::string; (depending on whether the system has ! libstdc++ in std:: or not). (ideas from ! <llewelly@dbritsch.dsl.xmission.com>, Karl Nelson ! <kenelson@ece.ucdavis.edu>) !

!
!
!

! 1.1.2. Defining an empty namespace std !

!

! By defining an (empty) namespace std:: before ! using it, you avoid getting errors on systems where no part of the ! library is in namespace std: !

! 	  namespace std { }
! 	  using namespace std;
! 	
!

!
!
!

! 1.1.3. Avoid to use fully qualified names ! (i.e. std::string) !

!

! If some compilers complain about using ! std::string;, and if the "hack" for gtk-- mentioned above ! does not work, then it might be a good idea to define a macro ! NS_STD, which is defined to either "" or "std" ! based on an autoconf-test. Then you should be able to use ! NS_STD::string, which will evaluate to ! ::string ("string in the global namespace") on ! systems that do not put string in std::. (This is untested) !

!
!
!

! 1.1.4. How some open-source-projects deal ! with this !

!

! This information was gathered around May 2000. It may not be correct ! by the time you read this. !

!
!

! Table 1. Namespace std:: in Open-Source programs !

! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
clanlibusual
pingususual
mozillausual
mnemonicnone
! libsigc++conservative-impl
!
!
!

! Table 2. Notations for categories !

! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
usualmostly fully qualified names and some ! using-declarations (but not in headers)
noneno namespace std at all
conservative-implwrap all ! namespace-handling in macros to support compilers without ! namespace-support (no libstdc++ used in headers)
!
!

! As you can see, this currently lacks an example of a project ! which uses libstdc++-symbols in headers in a back-portable way ! (except for Gtk--: see the section on the gtkmm-hack). !

!
!
!
!

! 2. there is no ios::nocreate/ios::noreplace ! in ISO 14882 !

!

! I have seen ios::nocreate being used for ! input-streams, most probably because the author thought it would be ! more correct to specify nocreate "explicitly". So you can simply ! leave it out for input-streams. !

!

! For output streams, "nocreate" is probably the default, unless you ! specify std::ios::trunc ? To be safe, you can open ! the file for reading, check if it has been opened, and then decide ! whether you want to create/replace or not. To my knowledge, even ! older implementations support app, ! ate and trunc (except for ! app ?). !

!
!
!

! 3. stream::attach(int ! fd) is not in the standard any more !

!

! Phil Edwards <pedwards@disaster.jaj.com> writes: ! It was considered and rejected. Not all environments use file ! descriptors. Of those that do, not all of them use integers to represent ! them. !

!

! When using libstdc++-v3, you can use !

!

!

! 	  #include <fstream>
! 	
!

! basic_filebuf<...>::basic_filebuf<...> ! ! (file, mode, size);
__c_file_type* file;
ios_base::open_mode mode;
int size;

!

!

! but the the signature of this constructor has changed often, and ! it might change again. For the current state of this, check ! the howto for extensions.

!

! For a portable solution (among systems which use ! filedescriptors), you need to implement a subclass of ! std::streambuf (or ! std::basic_streambuf<..>) which opens a file ! given a descriptor, and then pass an instance of this to the ! stream-constructor (from the Josuttis-book). !

!
!
!

! 4. The new headers !

!

! All new headers can be seen in this ! source-code. !

!

! The old C++-headers (iostream.h etc.) are available, but gcc generates ! a warning that you are using deprecated headers. !

!
!

! 4.4.1. New headers replacing C-headers !

!

! You should not use the C-headers (except for system-level ! headers) from C++ programs. Instead, you should use a set of ! headers that are named by prepending 'c' and, as usual, ! omitting the extension (.h). For example, instead of using ! <math.h>, you ! should use <cmath>. In some cases this has ! the advantage that the C++-header is more standardized than ! the C-header (i.e. <ctime> (almost) ! corresponds to either <time.h> or <sys/time.h>). ! The standard specifies that if you include the C-style header ! (<math.h> in ! this case), the symbols will be available both in the global ! namespace and in namespace std:: (but ! libstdc++ does not yet have fully compliant headers) On the ! other hand, if you include only the new header (i.e. <cmath>), the symbols ! will only be defined in namespace std:: ! (and macros will be converted to inline-functions). !

!

! For more information on this, and for information on how the ! GNU C++ implementation might reuse ("shadow") the C ! library-functions, have a look at ! www.cantrip.org. !

!
!
!

! 4.4.2. ! <fstream> does ! not define std::cout, ! std::cin etc. !

!

! In earlier versions of the standard, ! <fstream.h>, ! <ostream.h> ! and <istream.h> ! used to define ! cout, cin and so on. Because ! of the templatized iostreams in libstdc++-v3, you need to include ! <iostream> ! explicitly to define these. !

!
!
!
!

! 5. Iterators !

!

! The following are not proper uses of iterators, but may be working ! fixes for existing uses of iterators. !

    !
  • ! you cannot do ! ostream::operator<<(iterator) to ! print the address of the iterator => use ! operator<< &*iterator instead ? !

  • !
  • ! you cannot clear an iterator's reference ! (iterator = 0) => use ! iterator = iterator_type(); ? !

  • !
  • ! if (iterator) won't work any ! more => use if (iterator != iterator_type()) ! ?

  • !
!

!
!
!

! 6. ! Libc-macros (i.e. isspace from ! <cctype>) !

!

! Glibc 2.0.x and 2.1.x define the ! <ctype.h> ! -functionality as macros (isspace, isalpha etc.). Libstdc++-v3 ! "shadows" these macros as described in the section about ! c-headers. !

!

! Older implementations of libstdc++ (g++-2 for egcs 1.x and g++-3 ! for gcc 2.95.x), however, keep these functions as macros, and so it ! is not back-portable to use fully qualified names. For example: !

! 	#include <cctype>
! 	int main() { std::isspace('X'); }
!       
! will result in something like this (unless using g++-v3): !
! 	std:: (__ctype_b[(int) ( ( 'X' ) )] & (unsigned short int)
! 	_ISspace )  ;
!       
!

!

! One solution I can think of is to test for -v3 using ! autoconf-macros, and define macros for each of the C-functions ! (maybe that is possible with one "wrapper" macro as well ?). !

!

! Another solution which would fix g++ is to tell the user to modify a ! header-file so that g++-2 (egcs 1.x) and g++-3 (gcc 2.95.x) define a ! macro which tells <ctype.h> to define functions ! instead of macros: !

! 	// This keeps isalnum, et al from being propagated as macros.
! 	#if __linux__
! 	#define __NO_CTYPE 1
! 	#endif
! 
! 	[ now include <ctype.h> ]
!       
!

!

! Another problem arises if you put a using namespace ! std; declaration at the top, and include <ctype.h>. This will result in ! ambiguities between the definitions in the global namespace ! (<ctype.h>) and the ! definitions in namespace std:: ! (<cctype>). !

!

! The solution to this problem was posted to the libstdc++-v3 ! mailing-list: ! Benjamin Kosnik <bkoz@redhat.com> writes: ! ` ! --enable-cshadow-headers is currently broken. As a result, shadow ! headers are not being searched.... ! ' ! This is now outdated, but gcc 3.0 still does not have fully ! compliant "shadow headers". !

!
!
!

! 7. State of streams !

!

! At least some older implementations don't have ! std::ios_base, so you should use ! std::ios::badbit, std::ios::failbit ! and std::ios::eofbit and ! std::ios::goodbit. !

!
!
!

! 8. vector::at is missing (i.e. gcc 2.95.x) !

!

! One solution is to add an autoconf-test for this: !

! 	AC_MSG_CHECKING(for container::at)
! 	AC_TRY_COMPILE(
! 	[
! 	#include <vector>
! 	#include <deque>
! 	#include <string>
! 	
! 	using namespace std;
! 	],
! 	[
! 	deque<int> test_deque(3);
! 	test_deque.at(2);
! 	vector<int> test_vector(2);
! 	test_vector.at(1);
! 	string test_string("test_string");
! 	test_string.at(3);
! 	],
! 	[AC_MSG_RESULT(yes)
! 	AC_DEFINE(HAVE_CONTAINER_AT)],
! 	[AC_MSG_RESULT(no)])
!       
! If you are using other (non-GNU) compilers it might be a good idea ! to check for string::at separately. !

!
!
!

! 9. Using std::char_traits<char>::eof() !

!

!

! 	#ifdef HAVE_CHAR_TRAITS
! 	#define CPP_EOF std::char_traits<char>::eof()
! 	#else
! 	#define CPP_EOF EOF
! 	#endif
!       
!

!
!
!

! 10. Using string::clear()/string::erase() !

!

! There are two functions for deleting the contents of a string: ! clear and erase (the latter ! returns the string). !

! 	void 
! 	clear() { _M_mutate(0, this->size(), 0); }
!       
!
! 	basic_string& 
! 	erase(size_type __pos = 0, size_type __n = npos)
! 	{ 
! 	return this->replace(_M_check(__pos), _M_fold(__pos, __n),
! 	_M_data(), _M_data()); 
! 	}
!       
! The implementation of erase seems to be more ! complicated (from libstdc++-v3), but clear is not ! implemented in gcc 2.95.x's libstdc++, so you should use ! erase (which is probably faster than ! operator=(charT*)). !

!
!
!

! 11. GNU Extensions ostream::form and istream::scan !

!

! These are not supported any more - use ! ! stringstreams instead. !

!
!
!

! 12. Using stringstreams !

!

! Libstdc++-v3 provides the new ! i/ostringstream-classes, (<sstream>), but for compatibility ! with older implementations you still have to use ! i/ostrstream (<strstream>): !

! 	#ifdef HAVE_SSTREAM
! 	#include <sstream>
! 	#else
! 	#include <strstream>
! 	#endif
!       
!
    !
  • ! strstream is considered to be ! deprecated !

  • !
  • ! strstream is limited to ! char !

  • !
  • ! with ostringstream you don't ! have to take care of terminating the string or freeing its ! memory !

  • !
  • ! istringstream can be re-filled ! (clear(); str(input);) !

  • !
!

!

! You can then use output-stringstreams like this: !

! 	#ifdef HAVE_SSTREAM
! 	std::ostringstream oss;
! 	#else
! 	std::ostrstream oss;
! 	#endif
! 	oss << "Name=" << m_name << ", number=" << m_number << std::endl;
! 	...
! 	#ifndef HAVE_SSTREAM
! 	oss << std::ends; // terminate the char*-string
! 	#endif
! 	// str() returns char* for ostrstream and a string for ostringstream
! 	// this also causes ostrstream to think that the buffer's memory
! 	// is yours
! 	m_label.set_text(oss.str());
! 	#ifndef HAVE_SSTREAM
! 	// let the ostrstream take care of freeing the memory
! 	oss.freeze(false);
! 	#endif
!       
!

!

! Input-stringstreams can be used similarly: !

! 	std::string input;
! 	...
! 	#ifdef HAVE_SSTREAM
! 	std::istringstream iss(input);
! 	#else
! 	std::istrstream iss(input.c_str());
! 	#endif
! 	int i;
! 	iss >> i; 
!       
! One (the only?) restriction is that an istrstream cannot be re-filled: !
! 	std::istringstream iss(numerator);
! 	iss >> m_num;
! 	// this is not possible with istrstream
! 	iss.clear();
! 	iss.str(denominator);
! 	iss >> m_den;
!       
! If you don't care about speed, you can put these conversions in ! a template-function: !
! 	template <class X>
! 	void fromString(const string& input, X& any)
! 	{
! 	#ifdef HAVE_SSTREAM
! 	  std::istringstream iss(input);
! 	#else
! 	  std::istrstream iss(input.c_str());
! 	#endif
! 	  X temp;
! 	  iss >> temp;
! 	  if (iss.fail())
! 	    throw runtime_error(..)
! 	  any = temp;
! 	}
!       
! Another example of using stringstreams is in this howto. !

!

! I have read the Josuttis book on Standard C++, so some information ! comes from there. Additionally, there is information in ! "info iostream", which covers the old implementation that gcc 2.95.x ! uses. !

!
!
!

! 13. About... !

!

! Please send any experience, additions, corrections or questions to ! fnatter@gmx.net or for ! discussion to the libstdc++-v3-mailing-list. !

!
!
diff -Nrc3pad gcc-3.0/libstdc++-v3/docs/html/17_intro/porting-howto.xml gcc-3.0.1/libstdc++-v3/docs/html/17_intro/porting-howto.xml *** gcc-3.0/libstdc++-v3/docs/html/17_intro/porting-howto.xml Wed Dec 31 16:00:00 1969 --- gcc-3.0.1/libstdc++-v3/docs/html/17_intro/porting-howto.xml Wed Jul 11 17:04:16 2001 *************** *** 0 **** --- 1,758 ---- + + + + + + + + + + +
+ + Libstdc++-porting-howto + + Felix + Natter + +
+ fnatter@gmx.net +
+ + + 0.5 + Thu Jun 1 13:06:50 2000 + fnatter + First docbook-version. + + + 0.8 + Sun Jul 30 20:28:40 2000 + fnatter + First released version using docbook-xml + + second upload to libstdc++-page. + + + + 0.9 + Wed Sep 6 02:59:32 2000 + fnatter + 5 new sections. + + + 0.9.1 + Sat Sep 23 14:20:15 2000 + fnatter + added information about why file-descriptors are not in the + standard + + + 0.9.2 + Tue Jun 5 20:07:49 2001 + fnatter + + a fix, added hint on increased portability of C-shadow-headers, + added autoconf-test HAVE_CONTAINER_AT + + + + 0.9.3 + Fri Jun 29 16:15:56 2001 + fnatter + + changed signature of nonstandard filebuf-constructor and + update the section on filebuf::attach to point to ../ext/howto.html, + added link to ../21/strings/howto.html + in sec-stringstream, changed <link>-tags to have content + (so that these links work), + replace "user-space" by "global namespace" + add note about gcc 3.0 and shadow-headers + add section about ostream::form and istream::scan + sec-vector-at: remove hint to modify headers + fix spelling error in sec-stringstream + + + + Legal Notice + + This document can be distributed under the FDL + (www.gnu.org) + + + + Tue Jun 5 20:07:49 2001 + + + Some notes on porting applications from libstdc++-2.90 (or earlier + versions) to libstdc++-v3. Not speaking in terms of the GNU libstdc++ + implementations, this means porting from earlier versions of the + C++-Standard to ISO 14882. + + +
+ + + In the following, when I say portable, I will refer to "portable among ISO + 14882-implementations". On the other hand, if I say "backportable" or + "conservative", I am talking about "compiles with older + libstdc++-implementations". + + +
Namespace std:: + + The latest C++-standard (ISO-14882) requires that the standard + C++-library is defined in namespace std::. Thus, in order to use + classes from the standard C++-library, you can do one of three + things: + + + wrap your code in namespace std { + ... } => This is not an option because only symbols + from the standard c++-library are defined in namespace std::. + + + put a kind of + using-declaration in your source (either + using namespace std; or i.e. using + std::string;) => works well for source-files, but + cannot be used in header-files. + + + use a fully qualified name for + each libstdc++-symbol (i.e. std::string, + std::cout) => can always be used + + + + + + Because there are many compilers which still use an implementation + that does not have the standard C++-library in namespace + std::, some care is required to support these as + well. + + + + Namespace back-portability-issues are generally not a problem with + g++, because versions of g++ that do not have libstdc++ in + std:: use -fno-honor-std + (ignore std::, :: = std::) by + default. That is, the responsibility for enabling or disabling + std:: is on the user; the maintainer does not have + to care about it. This probably applies to some other compilers as + well. + + + The following sections list some possible solutions to support compilers + that cannot ignore std::. + + +
+ Using <emphasis>namespace + composition</emphasis> if the project uses a separate + namespace + + Gtk-- defines + most of its classes in namespace Gtk::. Thus, it was possible to + adapt Gtk-- to namespace std:: by using a C++-feature called + namespace composition. This is what happens if + you put a using-declaration into a + namespace-definition: the imported symbol(s) gets imported into the + currently active namespace(s). For example: + + namespace Gtk { + using std::string; + class Window { ... } + } + + In this example, std::string gets imported into + namespace Gtk::. The result is that you don't have to use + std::string in this header, but still + std::string does not get imported into + the global namespace (::) unless the user does + using namespace Gtk; (which is not recommended + practice for Gtk--, so it is not a problem). Additionally, the + using-declarations are wrapped in macros that + are set based on autoconf-tests to either "" or i.e. using + std::string; (depending on whether the system has + libstdc++ in std:: or not). (ideas from + llewelly@dbritsch.dsl.xmission.com, Karl Nelson + kenelson@ece.ucdavis.edu) + +
+ +
+ Defining an empty namespace std + + By defining an (empty) namespace std:: before + using it, you avoid getting errors on systems where no part of the + library is in namespace std: + + namespace std { } + using namespace std; + + +
+ +
+ Avoid to use fully qualified names + (i.e. std::string) + + If some compilers complain about using + std::string;, and if the "hack" for gtk-- mentioned above + does not work, then it might be a good idea to define a macro + NS_STD, which is defined to either "" or "std" + based on an autoconf-test. Then you should be able to use + NS_STD::string, which will evaluate to + ::string ("string in the global namespace") on + systems that do not put string in std::. (This is untested) + +
+ +
+ How some open-source-projects deal + with this + + This information was gathered around May 2000. It may not be correct + by the time you read this. + + Namespace std:: in Open-Source programs + + + + clanlib + + usual + + + pingus + + usual + + + mozilla + + usual + + + mnemonic + none + + + + libsigc++ + conservative-impl + + + +
+ + Notations for categories + + + + usual + mostly fully qualified names and some + using-declarations (but not in headers) + + + none no namespace std at all + + + conservative-impl + wrap all + namespace-handling in macros to support compilers without + namespace-support (no libstdc++ used in headers) + + + +
+ + + As you can see, this currently lacks an example of a project + which uses libstdc++-symbols in headers in a back-portable way + (except for Gtk--: see the section on the gtkmm-hack). + +
+
+ +
+ there is no ios::nocreate/ios::noreplace + in ISO 14882 + + I have seen ios::nocreate being used for + input-streams, most probably because the author thought it would be + more correct to specify nocreate "explicitly". So you can simply + leave it out for input-streams. + + + For output streams, "nocreate" is probably the default, unless you + specify std::ios::trunc ? To be safe, you can open + the file for reading, check if it has been opened, and then decide + whether you want to create/replace or not. To my knowledge, even + older implementations support app, + ate and trunc (except for + app ?). + +
+ +
+ <command>stream::attach(int + fd)</command> is not in the standard any more + + Phil Edwards pedwards@disaster.jaj.com writes: + It was considered and rejected. Not all environments use file + descriptors. Of those that do, not all of them use integers to represent + them. + + + When using libstdc++-v3, you can use + + + #include <fstream> + + + + basic_filebuf<...>::basic_filebuf<...> + + + __c_file_type* file + ios_base::open_mode mode + int size + + + but the the signature of this constructor has changed often, and + it might change again. For the current state of this, check + the howto for extensions. + + + For a portable solution (among systems which use + filedescriptors), you need to implement a subclass of + std::streambuf (or + std::basic_streambuf<..>) which opens a file + given a descriptor, and then pass an instance of this to the + stream-constructor (from the Josuttis-book). + +
+ +
+ The new headers + + All new headers can be seen in this + source-code. + + + The old C++-headers (iostream.h etc.) are available, but gcc generates + a warning that you are using deprecated headers. + + +
+ New headers replacing C-headers + + You should not use the C-headers (except for system-level + headers) from C++ programs. Instead, you should use a set of + headers that are named by prepending 'c' and, as usual, + omitting the extension (.h). For example, instead of using + <math.h>, you + should use <cmath>. In some cases this has + the advantage that the C++-header is more standardized than + the C-header (i.e. <ctime> (almost) + corresponds to either <time.h> or <sys/time.h>). + + The standard specifies that if you include the C-style header + (<math.h> in + this case), the symbols will be available both in the global + namespace and in namespace std:: (but + libstdc++ does not yet have fully compliant headers) On the + other hand, if you include only the new header (i.e. <cmath>), the symbols + will only be defined in namespace std:: + (and macros will be converted to inline-functions). + + + For more information on this, and for information on how the + GNU C++ implementation might reuse ("shadow") the C + library-functions, have a look at + www.cantrip.org. + +
+ +
+ + <filename class="headerfile"><fstream></filename> does + not define <command>std::cout</command>, + <command>std::cin</command> etc. + + In earlier versions of the standard, + <fstream.h>, + <ostream.h> + and <istream.h> + used to define + cout, cin and so on. Because + of the templatized iostreams in libstdc++-v3, you need to include + <iostream> + explicitly to define these. + +
+
+ +
+ Iterators + + The following are not proper uses of iterators, but may be working + fixes for existing uses of iterators. + + you cannot do + ostream::operator<<(iterator) to + print the address of the iterator => use + operator<< &*iterator instead ? + + + you cannot clear an iterator's reference + (iterator = 0) => use + iterator = iterator_type(); ? + + + if (iterator) won't work any + more => use if (iterator != iterator_type()) + ? + + + +
+ +
+ + Libc-macros (i.e. <command>isspace</command> from + <filename class = "headerfile"><cctype></filename>) + + Glibc 2.0.x and 2.1.x define the + <ctype.h> + -functionality as macros (isspace, isalpha etc.). Libstdc++-v3 + "shadows" these macros as described in the section about + c-headers. + + + Older implementations of libstdc++ (g++-2 for egcs 1.x and g++-3 + for gcc 2.95.x), however, keep these functions as macros, and so it + is not back-portable to use fully qualified names. For example: + + #include <cctype> + int main() { std::isspace('X'); } + + will result in something like this (unless using g++-v3): + + std:: (__ctype_b[(int) ( ( 'X' ) )] & (unsigned short int) + _ISspace ) ; + + + + One solution I can think of is to test for -v3 using + autoconf-macros, and define macros for each of the C-functions + (maybe that is possible with one "wrapper" macro as well ?). + + + Another solution which would fix g++ is to tell the user to modify a + header-file so that g++-2 (egcs 1.x) and g++-3 (gcc 2.95.x) define a + macro which tells <ctype.h> to define functions + instead of macros: + + // This keeps isalnum, et al from being propagated as macros. + #if __linux__ + #define __NO_CTYPE 1 + #endif + + [ now include <ctype.h> ] + + + + Another problem arises if you put a using namespace + std; declaration at the top, and include <ctype.h>. This will result in + ambiguities between the definitions in the global namespace + (<ctype.h>) and the + definitions in namespace std:: + (<cctype>). + + + The solution to this problem was posted to the libstdc++-v3 + mailing-list: + Benjamin Kosnik bkoz@redhat.com writes: + + --enable-cshadow-headers is currently broken. As a result, shadow + headers are not being searched.... + + This is now outdated, but gcc 3.0 still does not have fully + compliant "shadow headers". + +
+ +
+ State of streams + + At least some older implementations don't have + std::ios_base, so you should use + std::ios::badbit, std::ios::failbit + and std::ios::eofbit and + std::ios::goodbit. + +
+ +
+ vector::at is missing (i.e. gcc 2.95.x) + + One solution is to add an autoconf-test for this: + + AC_MSG_CHECKING(for container::at) + AC_TRY_COMPILE( + [ + #include <vector> + #include <deque> + #include <string> + + using namespace std; + ], + [ + deque<int> test_deque(3); + test_deque.at(2); + vector<int> test_vector(2); + test_vector.at(1); + string test_string("test_string"); + test_string.at(3); + ], + [AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_CONTAINER_AT)], + [AC_MSG_RESULT(no)]) + + If you are using other (non-GNU) compilers it might be a good idea + to check for string::at separately. + +
+ +
+ Using std::char_traits<char>::eof() + + + #ifdef HAVE_CHAR_TRAITS + #define CPP_EOF std::char_traits<char>::eof() + #else + #define CPP_EOF EOF + #endif + + +
+ +
+ Using string::clear()/string::erase() + + There are two functions for deleting the contents of a string: + clear and erase (the latter + returns the string). + + void + clear() { _M_mutate(0, this->size(), 0); } + + + basic_string& + erase(size_type __pos = 0, size_type __n = npos) + { + return this->replace(_M_check(__pos), _M_fold(__pos, __n), + _M_data(), _M_data()); + } + + The implementation of erase seems to be more + complicated (from libstdc++-v3), but clear is not + implemented in gcc 2.95.x's libstdc++, so you should use + erase (which is probably faster than + operator=(charT*)). + +
+ +
+ GNU Extensions ostream::form and istream::scan + + These are not supported any more - use + + stringstreams instead. + +
+ +
+ Using stringstreams + + Libstdc++-v3 provides the new + i/ostringstream-classes, (<sstream>), but for compatibility + with older implementations you still have to use + i/ostrstream (<strstream>): + + #ifdef HAVE_SSTREAM + #include <sstream> + #else + #include <strstream> + #endif + + + strstream is considered to be + deprecated + + + strstream is limited to + char + + + with ostringstream you don't + have to take care of terminating the string or freeing its + memory + + + istringstream can be re-filled + (clear(); str(input);) + + + + + + You can then use output-stringstreams like this: + + #ifdef HAVE_SSTREAM + std::ostringstream oss; + #else + std::ostrstream oss; + #endif + oss << "Name=" << m_name << ", number=" << m_number << std::endl; + ... + #ifndef HAVE_SSTREAM + oss << std::ends; // terminate the char*-string + #endif + // str() returns char* for ostrstream and a string for ostringstream + // this also causes ostrstream to think that the buffer's memory + // is yours + m_label.set_text(oss.str()); + #ifndef HAVE_SSTREAM + // let the ostrstream take care of freeing the memory + oss.freeze(false); + #endif + + + + Input-stringstreams can be used similarly: + + std::string input; + ... + #ifdef HAVE_SSTREAM + std::istringstream iss(input); + #else + std::istrstream iss(input.c_str()); + #endif + int i; + iss >> i; + + One (the only?) restriction is that an istrstream cannot be re-filled: + + std::istringstream iss(numerator); + iss >> m_num; + // this is not possible with istrstream + iss.clear(); + iss.str(denominator); + iss >> m_den; + + If you don't care about speed, you can put these conversions in + a template-function: + + template <class X> + void fromString(const string& input, X& any) + { + #ifdef HAVE_SSTREAM + std::istringstream iss(input); + #else + std::istrstream iss(input.c_str()); + #endif + X temp; + iss >> temp; + if (iss.fail()) + throw runtime_error(..) + any = temp; + } + + Another example of using stringstreams is in this howto. + + + I have read the Josuttis book on Standard C++, so some information + comes from there. Additionally, there is information in + "info iostream", which covers the old implementation that gcc 2.95.x + uses. + +
+ +
+ About... + + Please send any experience, additions, corrections or questions to + fnatter@gmx.net or for + discussion to the libstdc++-v3-mailing-list. + +
+ +
+ + + + diff -Nrc3pad gcc-3.0/libstdc++-v3/docs/html/27_io/howto.html gcc-3.0.1/libstdc++-v3/docs/html/27_io/howto.html *** gcc-3.0/libstdc++-v3/docs/html/27_io/howto.html Wed May 30 14:59:33 2001 --- gcc-3.0.1/libstdc++-v3/docs/html/27_io/howto.html Wed Jul 18 14:39:58 2001 *************** *** 8,14 **** libstdc++-v3 HOWTO: Chapter 27 ! --- 8,14 ---- libstdc++-v3 HOWTO: Chapter 27 ! *************** *** 29,34 **** --- 29,35 ----
  • What is this <sstream>/stringstreams thing?
  • Deriving a stream buffer
  • More on binary I/O +
  • Pathetic performance? Ditch C.
    *************** *** 400,413 **** a portable binary format.

    !

    Comments and suggestions are welcome, and may be sent to the mailing list. !
    $Id: howto.html,v 1.3.2.2 2001/05/30 21:59:33 pme Exp $

    --- 401,466 ---- a portable binary format.

    +
    +

    Pathetic performance? Ditch C.

    +

    It sounds like a flame on C, but it isn't. Really. Calm down. + I'm just saying it to get your attention. +

    +

    Because the C++ library includes the C library, both C-style and + C++-style I/O have to work at the same time. For example: +

    +      #include <iostream>
    +      #include <cstdio>
    + 
    +      std::cout << "Hel";
    +      std::printf ("lo, worl");
    +      std::cout << "d!\n";
    +       
    + This must do what you think it does. +

    +

    Alert members of the audience will immediately notice that buffering + is going to make a hash of the output unless special steps are taken. +

    +

    The special steps taken by libstdc++, at least for version 3.0, + involve doing very little buffering for the standard streams, leaving + most of the buffering to the underlying C library. (This kind of + thing is tricky to get right.) + The upside is that correctness is ensured. The downside is that + writing through cout can quite easily lead to awful + performance when the C++ I/O library is layered on top of the C I/O + library (as it is for 3.0 by default). Some patches are in the + works which should improve the situation for 3.1. +

    +

    However, the C and C++ standard streams only need to be kept in sync + when both libraries' facilities are in use. If your program only uses + C++ I/O, then there's no need to sync with the C streams. The right + thing to do in this case is to call +

    +      #include any of the I/O headers such as ios, iostream, etc
    + 
    +      std::ios::sync_with_stdio(false);
    +       
    +

    +

    You must do this before performing any I/O via the C++ stream objects. + Once you call this, the C++ streams will operate independantly of the + (unused) C streams. For GCC 3.0, this means that cout and + company will become fully buffered on their own. +

    +

    Note, by the way, that the synchronization requirement only applies to + the standard streams (cin, cout, cerr, + clog, and their wide-character counterparts). File stream + objects that you create yourself have no such requirement and are fully + buffered. +

    + !








    Comments and suggestions are welcome, and may be sent to the mailing list. !
    $Id: howto.html,v 1.3.2.5 2001/07/18 21:39:58 pme Exp $

    diff -Nrc3pad gcc-3.0/libstdc++-v3/docs/html/configopts.html gcc-3.0.1/libstdc++-v3/docs/html/configopts.html *** gcc-3.0/libstdc++-v3/docs/html/configopts.html Mon May 14 12:48:55 2001 --- gcc-3.0.1/libstdc++-v3/docs/html/configopts.html Mon Jul 9 14:55:36 2001 *************** *** 7,13 **** libstdc++-v3 configure options ! --- 7,13 ---- libstdc++-v3 configure options ! *************** options *** 66,121 **** I/O package (from glibc, the GNU C library), or 'stdio' to use a generic "C" ! abstraction. The default is 'stdio'.

    !
    --enable-sjlj-exceptions !

    Forces old, short-jump/long-jump exception handling model. If ! at all possible, the new, frame unwinding exception handling routines ! should be used instead, as they significantly reduce both runtime ! memory usage and executable size.

    -
    --enable-clocale

    This is an abbreviated form of '--enable-clocale=generic' (described next).

    !
    --enable-clocale=MODEL

    Select a target-specific ! underlying locale package. The choices are 'gnu' to specify an X/Open ! (IEEE Std. 1003.1-200x) model based on langinfo/iconv (from glibc, the GNU C ! library), or 'generic' to use a generic "C" abstraction ! which consists of "C" locale info. The default is ! 'generic'.

    --enable-c99

    The "long long" type was introduced in C99, along ! with bunches of other functions for wide characters, and math ! classification macros, etc. If enabled, all C99 functions not ! specified by the C++ standard will be put into namespace c99, ! and then all names in the c99 namespace will be injected into ! namespace std, so that C99 functions can be used "as if" they ! were in the C++ standard (as they will eventually be in some ! future revision of the standard, without a doubt.) By default, ! C99 support is on, assuming the configure probes find all the ! necessary functions and bits necessary.

    --enable-long-long

    The "long long" type was introduced in C99. It is provided as a GNU extension to C++98 in g++. This flag builds ! support for "long long" into the library ! (specialized templates and the like for iostreams). This ! option is on by default: if enabled, users will have to either ! use the new-style "C" headers by default (ie cmath ! not math.h) or add appropriate compile-time flags to all ! compile lines to allow "C" visibility of this ! feature (on GNU/Linux, the flag is -D_ISOC99_SOURCE, which is ! added automatically via CPLUSPLUS_CPP_SPEC's addition of ! _GNU_SOURCE).

    --enable-cheaders=OPTION --- 66,120 ---- I/O package (from glibc, the GNU C library), or 'stdio' to use a generic "C" ! abstraction. The default is 'stdio'. A longer explanation ! is here.

    !
    --enable-sjlj-exceptions !

    Forces old, set-jump/long-jump exception handling model. If ! at all possible, the new, frame unwinding exception handling routines ! should be used instead, as they significantly reduce both runtime ! memory usage and executable size.

    --enable-clocale

    This is an abbreviated form of '--enable-clocale=generic' (described next).

    !
    --enable-clocale=MODEL !

    Select a target-specific underlying locale package. The choices ! are 'gnu' to specify an X/Open (IEEE Std. 1003.1-200x) model based ! on langinfo/iconv (from ! glibc, the GNU C ! library), or 'generic' to use a generic "C" abstraction ! which consists of "C" locale info. The default is 'generic'.

    --enable-c99

    The "long long" type was introduced in C99, along ! with bunches of other functions for wide characters, and math ! classification macros, etc. If enabled, all C99 functions not ! specified by the C++ standard will be put into namespace ! c99, and then all names in the c99 namespace will be injected ! into namespace std, so that C99 functions can be used "as ! if" they were in the C++ standard (as they will eventually ! be in some future revision of the standard, without a doubt). ! By default, C99 support is on, assuming the configure probes find ! all the necessary functions and bits necessary.

    --enable-long-long

    The "long long" type was introduced in C99. It is provided as a GNU extension to C++98 in g++. This flag builds ! support for "long long" into the library (specialized ! templates and the like for iostreams). This option is on by default: ! if enabled, users will have to either use the new-style "C" ! headers by default (i.e., <cmath> not <math.h>) ! or add appropriate compile-time flags to all compile lines to ! allow "C" visibility of this feature (on GNU/Linux, ! the flag is -D_ISOC99_SOURCE, which is added automatically via ! CPLUSPLUS_CPP_SPEC's addition of _GNU_SOURCE).

    --enable-cheaders=OPTION *************** options *** 148,161 ****
    --enable-version-specific-runtime-libs

    Specify that run-time libraries should be installed in the ! compiler-specific subdirectory (i.e., ! $(libdir)/gcc-lib/$(target_alias)/$(gcc_version)) ! instead of $(libdir). This option is useful if you ! intend to use several versions of gcc in parallel. In addition, ! libstdc++'s include files will be installed in ! $(libdir)/gcc-lib/$(target_alias)/$(gcc_version)/include/g++, ! unless you also specify ! --with-gxx-include-dir=_dirname_ during configuration.

    --with-gxx-include-dir=<include-files dir> --- 147,160 ----
    --enable-version-specific-runtime-libs

    Specify that run-time libraries should be installed in the ! compiler-specific subdirectory (i.e., ! ${libdir}/gcc-lib/${target_alias}/${gcc_version}) ! instead of ${libdir}. This option is useful if you ! intend to use several versions of gcc in parallel. In addition, ! libstdc++'s include files will be installed in ! ${libdir}/gcc-lib/${target_alias}/${gcc_version}/include/g++, ! unless you also specify ! --with-gxx-include-dir=dirname during configuration.

    --with-gxx-include-dir=<include-files dir> *************** options *** 212,218 ****

    ! $Id: configopts.html,v 1.6.2.3 2001/05/14 19:48:55 bkoz Exp $

    --- 211,217 ----

    ! $Id: configopts.html,v 1.6.2.5 2001/07/09 21:55:36 pme Exp $

    diff -Nrc3pad gcc-3.0/libstdc++-v3/docs/html/explanations.html gcc-3.0.1/libstdc++-v3/docs/html/explanations.html *** gcc-3.0/libstdc++-v3/docs/html/explanations.html Wed Dec 31 16:00:00 1969 --- gcc-3.0.1/libstdc++-v3/docs/html/explanations.html Mon Jul 9 12:38:58 2001 *************** *** 0 **** --- 1,74 ---- + + + + + + + + Explanatory notes about libstdc++-v3 design + + + + + +

    Explanatory notes about libstdc++-v3 + design

    + +

    The latest version of this document is always available at + + http://gcc.gnu.org/onlinedocs/libstdc++/explanations.html. +

    + +

    To the libstdc++-v3 homepage. + + + +


    +

    "I/O packages", --enable-cstdio

    +

    In addition to all the nifty things which C++ can do for I/O, its library + also includes all of the I/O capabilites of C. Making them work together + can be a challenge, not only + for the programmer but for the + implementors as well. +

    +

    There are two ways to do a C++ library: the cool way, and the easy way. + More specifically, the cool-but-easy-to-get-wrong way, and the + easy-to-guarantee-correct-behavior way. For 3.0, the easy way is used. +

    +

    Choosing 'stdio' is the easy way. It builds a C++ library which forwards + all operations to the C library. Many of the C++ I/O functions are + specified in the standard 'as if' they called a certain C function; the + easiest way to get it correct is to actually call that function. The + disadvantage is that the C++ code will run slower (fortunately, the layer + is thin). +

    +

    Choosing 'libio' is the cool way; it allows C++ and C to share some + buffers. It's disabled because of tricky synchronization issues. Other + cool ways (various methods of sharing resources between C and C++ + facilities, instead of layering) are possible. This approach can speed + up I/O significantly. +

    +

    Other packages are possible. For a new package, a header must be + written to provide types like streamsize (usually just a typedef), as + well as some internal types like __c_file_type and + __c_lock (for the stdio case, these are FILE (as in + "FILE*") and a simple POSIX mutex, respectively). An + interface class called __basic_file must also be filled in; + as an example, for the stdio case, these member functions are all + inline calles to fread, fwrite, etc. +

    +

    Return to the top of the page or + to the homepage. +

    + + + + +
    +

    + $Id: explanations.html,v 1.1.2.1 2001/07/09 19:38:58 pme Exp $ +

    + + + + diff -Nrc3pad gcc-3.0/libstdc++-v3/docs/html/faq/index.html gcc-3.0.1/libstdc++-v3/docs/html/faq/index.html *** gcc-3.0/libstdc++-v3/docs/html/faq/index.html Wed May 30 14:59:33 2001 --- gcc-3.0.1/libstdc++-v3/docs/html/faq/index.html Wed Jul 18 14:39:58 2001 *************** *** 9,15 **** ** Locations of "the most recent snapshot is the Nth" text are ** answers 1_1, 1_4, 4_1, 5_6. --> ! --- 9,15 ---- ** Locations of "the most recent snapshot is the Nth" text are ** answers 1_1, 1_4, 4_1, 5_6. --> ! *************** which is no longer available, thanks dej *** 241,247 ****

    If you have a question that you think should be included here, or if you have a question about a question/answer here, ! contact Phil Edwards or Gabriel Dos Reis.

    --- 241,247 ----

    If you have a question that you think should be included here, or if you have a question about a question/answer here, ! contact Phil Edwards or Gabriel Dos Reis.

    *************** which is no longer available, thanks dej *** 257,263 **** easier and more automated than building the GCC 2.[78] series was. If you are using GCC 2.95, you can still build earlier snapshots of libstdc++. !
  • GNU Make is the only make that supports these makefiles.
  • The GNU Autotools are needed if you are messing with the configury or makefiles. --- 257,263 ---- easier and more automated than building the GCC 2.[78] series was. If you are using GCC 2.95, you can still build earlier snapshots of libstdc++. !
  • GNU Make is recommended, but should not be required.
  • The GNU Autotools are needed if you are messing with the configury or makefiles. *************** which is no longer available, thanks dej *** 304,316 ****

    2.4 How do I know if it works?

    libstdc++-v3 comes with its own testsuite. You do not need ! to actually install the library ("gmake install") to run the testsuite.

    To run the testsuite on the library after building it, use ! "gmake check" while in your build directory. To run the testsuite on the library after building and installing it, ! use "gmake check-install" instead.

    If you find bugs in the testsuite programs themselves, or if you think of a new test program that should be added to the --- 304,316 ----


    2.4 How do I know if it works?

    libstdc++-v3 comes with its own testsuite. You do not need ! to actually install the library ("make install") to run the testsuite.

    To run the testsuite on the library after building it, use ! "make check" while in your build directory. To run the testsuite on the library after building and installing it, ! use "make check-install" instead.

    If you find bugs in the testsuite programs themselves, or if you think of a new test program that should be added to the *************** http://clisp.cons.org/~haible/gccinclude *** 551,565 **** than a typedef for T* outweighs nearly all opposing arguments.


    5.2 What's next after libstdc++-v3?

    Hopefully, not much. The goal of libstdc++-v3 is to produce a fully-compliant, fully-portable Standard Library. After that, we're mostly done: there won't be any more compliance ! work to do.

    !

    The ISO Committee will meet periodically to review Defect Reports in the C++ Standard. Undoubtedly some of these will result in changes to the Standard, which will be reflected in patches to libstdc++. Some of that is already happening, see 4.2. Some of --- 551,572 ---- than a typedef for T* outweighs nearly all opposing arguments.

    +

    Code which does assume that a vector iterator i + is a pointer can often be fixed by changing i in + certain expressions to &*i . Future revisions + of the Standard are expected to bless this usage for + vector<> (but not for basic_string<>). +


    5.2 What's next after libstdc++-v3?

    Hopefully, not much. The goal of libstdc++-v3 is to produce a fully-compliant, fully-portable Standard Library. After that, we're mostly done: there won't be any more compliance ! work to do. However:

    !
      !
    1. The ISO Committee will meet periodically to review Defect Reports in the C++ Standard. Undoubtedly some of these will result in changes to the Standard, which will be reflected in patches to libstdc++. Some of that is already happening, see 4.2. Some of *************** http://clisp.cons.org/~haible/gccinclude *** 567,573 **** we add code to the library based on what the current proposed resolution specifies.

      !

      The current libstdc++ contains extensions to the Library which must be explicitly requested by client code (for example, the hash tables from SGI). Other extensions may be added to libstdc++-v3 if they seem to be "standard" enough. --- 574,589 ---- we add code to the library based on what the current proposed resolution specifies.

      !
    2. Performance tuning. Lots of performance tuning. This too is ! already underway for post-3.0 releases, starting with memory ! expansion in container classes and buffer usage in synchronized ! stream objects. !

      !
    3. An ABI for libstdc++ will eventually be developed, so that ! multiple binary-incompatible copies of the library can be replaced ! with a single backwards-compatible library, like libgcc_s.so is. !

      !
    4. The current libstdc++ contains extensions to the Library which must be explicitly requested by client code (for example, the hash tables from SGI). Other extensions may be added to libstdc++-v3 if they seem to be "standard" enough. *************** http://clisp.cons.org/~haible/gccinclude *** 575,580 **** --- 591,597 ---- Bugfixes and rewrites (to improve or fix thread safety, for instance) will of course be a continuing task.

      +

    This question about the next libstdc++ prompted some brief but *************** HREF="http://gcc.gnu.org/ml/libstdc++/19 *** 584,593 ****


    5.3 What about the STL from SGI?

    !

    The STL from SGI ! is merged into libstdc++-v3 with changes as necessary. ! Currently release 3.3 is being used as an initial codebase, plus ! changes, fixes, and extensions.

    In particular, string is not from SGI and makes no use of their "rope" class (which is included as an --- 601,611 ----


    5.3 What about the STL from SGI?

    !

    The STL from SGI, ! version 3.3, was the most recent merge of the STL codebase. The ! code in libstdc++ contains many fixes and changes, and it is ! very likely that the SGI code is no longer under active ! development. We expect that no future merges will take place.

    In particular, string is not from SGI and makes no use of their "rope" class (which is included as an *************** HREF="http://gcc.gnu.org/ml/libstdc++/19 *** 660,666 ****

    Comments and suggestions are welcome, and may be sent to the mailing list. !
    $Id: index.html,v 1.2.4.4 2001/05/30 21:59:33 pme Exp $

    --- 678,684 ----

    Comments and suggestions are welcome, and may be sent to the mailing list. !
    $Id: index.html,v 1.2.4.5 2001/07/18 21:39:58 pme Exp $

    diff -Nrc3pad gcc-3.0/libstdc++-v3/docs/html/faq/index.txt gcc-3.0.1/libstdc++-v3/docs/html/faq/index.txt *** gcc-3.0/libstdc++-v3/docs/html/faq/index.txt Wed May 30 14:59:33 2001 --- gcc-3.0.1/libstdc++-v3/docs/html/faq/index.txt Wed Jul 18 14:39:58 2001 *************** *** 187,193 **** more automated than building the GCC 2.[78] series was. If you are using GCC 2.95, you can still build earlier snapshots of libstdc++. ! * GNU Make is the only make that supports these makefiles. * The GNU Autotools are needed if you are messing with the configury or makefiles. --- 187,193 ---- more automated than building the GCC 2.[78] series was. If you are using GCC 2.95, you can still build earlier snapshots of libstdc++. ! * GNU Make is recommended, but should not be required. * The GNU Autotools are needed if you are messing with the configury or makefiles. *************** *** 228,238 **** 2.4 How do I know if it works? libstdc++-v3 comes with its own testsuite. You do not need to actually ! install the library ("gmake install") to run the testsuite. ! To run the testsuite on the library after building it, use "gmake check" while in your build directory. To run the testsuite on the ! library after building and installing it, use "gmake check-install" instead. If you find bugs in the testsuite programs themselves, or if you think --- 228,238 ---- 2.4 How do I know if it works? libstdc++-v3 comes with its own testsuite. You do not need to actually ! install the library ("make install") to run the testsuite. ! To run the testsuite on the library after building it, use "make check" while in your build directory. To run the testsuite on the ! library after building and installing it, use "make check-install" instead. If you find bugs in the testsuite programs themselves, or if you think *************** http://clisp.cons.org/~haible/gccinclude *** 430,456 **** were never guaranteed by the Standard anyway. The type-safety achieved by making iterators a real class rather than a typedef for T* outweighs nearly all opposing arguments. _________________________________________________________________ 5.2 What's next after libstdc++-v3? Hopefully, not much. The goal of libstdc++-v3 is to produce a fully-compliant, fully-portable Standard Library. After that, we're ! mostly done: there won't be any more compliance work to do. ! ! The ISO Committee will meet periodically to review Defect Reports in ! the C++ Standard. Undoubtedly some of these will result in changes to ! the Standard, which will be reflected in patches to libstdc++. Some of ! that is already happening, see 4.2. Some of those changes are being ! predicted by the library maintainers, and we add code to the library ! based on what the current proposed resolution specifies. ! ! The current libstdc++ contains extensions to the Library which must be ! explicitly requested by client code (for example, the hash tables from ! SGI). Other extensions may be added to libstdc++-v3 if they seem to be ! "standard" enough. (For example, the "long long" type from C99.) ! Bugfixes and rewrites (to improve or fix thread safety, for instance) ! will of course be a continuing task. [69]This question about the next libstdc++ prompted some brief but interesting [70]speculation. --- 430,467 ---- were never guaranteed by the Standard anyway. The type-safety achieved by making iterators a real class rather than a typedef for T* outweighs nearly all opposing arguments. + + Code which does assume that a vector iterator i is a pointer can often + be fixed by changing i in certain expressions to &*i . Future + revisions of the Standard are expected to bless this usage for + vector<> (but not for basic_string<>). _________________________________________________________________ 5.2 What's next after libstdc++-v3? Hopefully, not much. The goal of libstdc++-v3 is to produce a fully-compliant, fully-portable Standard Library. After that, we're ! mostly done: there won't be any more compliance work to do. However: ! 1. The ISO Committee will meet periodically to review Defect Reports ! in the C++ Standard. Undoubtedly some of these will result in ! changes to the Standard, which will be reflected in patches to ! libstdc++. Some of that is already happening, see 4.2. Some of ! those changes are being predicted by the library maintainers, and ! we add code to the library based on what the current proposed ! resolution specifies. ! 2. Performance tuning. Lots of performance tuning. This too is ! already underway for post-3.0 releases, starting with memory ! expansion in container classes and buffer usage in synchronized ! stream objects. ! 3. An ABI for libstdc++ will eventually be developed, so that ! multiple binary-incompatible copies of the library can be replaced ! with a single backwards-compatible library, like libgcc_s.so is. ! 4. The current libstdc++ contains extensions to the Library which ! must be explicitly requested by client code (for example, the hash ! tables from SGI). Other extensions may be added to libstdc++-v3 if ! they seem to be "standard" enough. (For example, the "long long" ! type from C99.) Bugfixes and rewrites (to improve or fix thread ! safety, for instance) will of course be a continuing task. [69]This question about the next libstdc++ prompted some brief but interesting [70]speculation. *************** http://clisp.cons.org/~haible/gccinclude *** 458,466 **** 5.3 What about the STL from SGI? ! The [71]STL from SGI is merged into libstdc++-v3 with changes as ! necessary. Currently release 3.3 is being used as an initial codebase, ! plus changes, fixes, and extensions. In particular, string is not from SGI and makes no use of their "rope" class (which is included as an optional extension), nor is valarray --- 469,478 ---- 5.3 What about the STL from SGI? ! The [71]STL from SGI, version 3.3, was the most recent merge of the ! STL codebase. The code in libstdc++ contains many fixes and changes, ! and it is very likely that the SGI code is no longer under active ! development. We expect that no future merges will take place. In particular, string is not from SGI and makes no use of their "rope" class (which is included as an optional extension), nor is valarray *************** http://clisp.cons.org/~haible/gccinclude *** 517,523 **** Comments and suggestions are welcome, and may be sent to [78]the mailing list. ! $Id: index.txt,v 1.2.4.4 2001/05/30 21:59:33 pme Exp $ References --- 529,535 ---- Comments and suggestions are welcome, and may be sent to [78]the mailing list. ! $Id: index.txt,v 1.2.4.5 2001/07/18 21:39:58 pme Exp $ References *************** References *** 571,577 **** 48. http://www.boost.org/ 49. http://gcc.gnu.org/fom_serv/cache/33.html 50. mailto:libstdc++@gcc.gnu.org ! 51. mailto:pme@sources.redhat.com 52. mailto:gdr@gcc.gnu.org 53. ../documentation.html 54. ../17_intro/RELEASE-NOTES --- 583,589 ---- 48. http://www.boost.org/ 49. http://gcc.gnu.org/fom_serv/cache/33.html 50. mailto:libstdc++@gcc.gnu.org ! 51. mailto:pme@gcc.gnu.org 52. mailto:gdr@gcc.gnu.org 53. ../documentation.html 54. ../17_intro/RELEASE-NOTES diff -Nrc3pad gcc-3.0/libstdc++-v3/include/Makefile.am gcc-3.0.1/libstdc++-v3/include/Makefile.am *** gcc-3.0/libstdc++-v3/include/Makefile.am Wed Dec 31 16:00:00 1969 --- gcc-3.0.1/libstdc++-v3/include/Makefile.am Fri Aug 17 22:03:40 2001 *************** *** 0 **** --- 1,428 ---- + ## Makefile for the include subdirectory of the GNU C++ Standard library. + ## + ## Copyright (C) 2001 Free Software Foundation, Inc. + ## + ## This file is part of the libstdc++ version 3 distribution. + ## Process this file with automake to produce Makefile.in. + + ## This file is part of the GNU ISO C++ Library. This library is free + ## software; you can redistribute it and/or modify it under the + ## terms of the GNU General Public License as published by the + ## Free Software Foundation; either version 2, or (at your option) + ## any later version. + + ## This library is distributed in the hope that it will be useful, + ## but WITHOUT ANY WARRANTY; without even the implied warranty of + ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + ## GNU General Public License for more details. + + ## You should have received a copy of the GNU General Public License along + ## with this library; see the file COPYING. If not, write to the Free + ## Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + ## USA. + + ## $Id: Makefile.am,v 1.1.6.4 2001/08/18 05:03:40 ljrittle Exp $ + + AUTOMAKE_OPTIONS = 1.3 gnits + MAINT_CHARSET = latin1 + + mkinstalldirs = $(SHELL) $(toplevel_srcdir)/mkinstalldirs + + # Cross compiler and multilib support. + CXX = @glibcpp_CXX@ + glibcpp_srcdir=@glibcpp_srcdir@ + glibcpp_builddir=@glibcpp_builddir@ + + bits_srcdir = ${glibcpp_srcdir}/include/bits + bits_builddir = ./bits + bits_headers = \ + ${bits_srcdir}/basic_file.h \ + ${bits_srcdir}/basic_ios.h \ + ${bits_srcdir}/basic_ios.tcc \ + ${bits_srcdir}/basic_string.h \ + ${bits_srcdir}/basic_string.tcc \ + ${bits_srcdir}/boost_concept_check.h \ + ${bits_srcdir}/char_traits.h \ + ${bits_srcdir}/codecvt.h \ + ${bits_srcdir}/concept_check.h \ + ${bits_srcdir}/cpp_type_traits.h \ + ${bits_srcdir}/fpos.h \ + ${bits_srcdir}/fstream.tcc \ + ${bits_srcdir}/functexcept.h \ + ${bits_srcdir}/generic_shadow.h \ + ${bits_srcdir}/gslice.h \ + ${bits_srcdir}/gslice_array.h \ + ${bits_srcdir}/indirect_array.h \ + ${bits_srcdir}/ios_base.h \ + ${bits_srcdir}/istream.tcc \ + ${bits_srcdir}/locale_facets.h \ + ${bits_srcdir}/locale_facets.tcc \ + ${bits_srcdir}/localefwd.h \ + ${bits_srcdir}/mask_array.h \ + ${bits_srcdir}/ostream.tcc \ + ${bits_srcdir}/pthread_allocimpl.h \ + ${bits_srcdir}/sbuf_iter.h \ + ${bits_srcdir}/slice.h \ + ${bits_srcdir}/slice_array.h \ + ${bits_srcdir}/sstream.tcc \ + ${bits_srcdir}/std_algorithm.h \ + ${bits_srcdir}/std_bitset.h \ + ${bits_srcdir}/std_complex.h \ + ${bits_srcdir}/std_deque.h \ + ${bits_srcdir}/std_fstream.h \ + ${bits_srcdir}/std_functional.h \ + ${bits_srcdir}/std_iomanip.h \ + ${bits_srcdir}/std_ios.h \ + ${bits_srcdir}/std_iosfwd.h \ + ${bits_srcdir}/std_iostream.h \ + ${bits_srcdir}/std_istream.h \ + ${bits_srcdir}/std_iterator.h \ + ${bits_srcdir}/std_limits.h \ + ${bits_srcdir}/std_list.h \ + ${bits_srcdir}/std_locale.h \ + ${bits_srcdir}/std_map.h \ + ${bits_srcdir}/std_memory.h \ + ${bits_srcdir}/std_numeric.h \ + ${bits_srcdir}/std_ostream.h \ + ${bits_srcdir}/std_queue.h \ + ${bits_srcdir}/std_set.h \ + ${bits_srcdir}/std_sstream.h \ + ${bits_srcdir}/std_stack.h \ + ${bits_srcdir}/std_stdexcept.h \ + ${bits_srcdir}/std_streambuf.h \ + ${bits_srcdir}/std_string.h \ + ${bits_srcdir}/std_utility.h \ + ${bits_srcdir}/std_valarray.h \ + ${bits_srcdir}/std_vector.h \ + ${bits_srcdir}/stl_algo.h \ + ${bits_srcdir}/stl_algobase.h \ + ${bits_srcdir}/stl_alloc.h \ + ${bits_srcdir}/stl_bvector.h \ + ${bits_srcdir}/stl_construct.h \ + ${bits_srcdir}/stl_deque.h \ + ${bits_srcdir}/stl_function.h \ + ${bits_srcdir}/stl_heap.h \ + ${bits_srcdir}/stl_iterator.h \ + ${bits_srcdir}/stl_iterator_base_funcs.h \ + ${bits_srcdir}/stl_iterator_base_types.h \ + ${bits_srcdir}/stl_list.h \ + ${bits_srcdir}/stl_map.h \ + ${bits_srcdir}/stl_multimap.h \ + ${bits_srcdir}/stl_multiset.h \ + ${bits_srcdir}/stl_numeric.h \ + ${bits_srcdir}/stl_pair.h \ + ${bits_srcdir}/stl_pthread_alloc.h \ + ${bits_srcdir}/stl_queue.h \ + ${bits_srcdir}/stl_raw_storage_iter.h \ + ${bits_srcdir}/stl_relops.h \ + ${bits_srcdir}/stl_set.h \ + ${bits_srcdir}/stl_stack.h \ + ${bits_srcdir}/stl_tempbuf.h \ + ${bits_srcdir}/stl_threads.h \ + ${bits_srcdir}/stl_tree.h \ + ${bits_srcdir}/stl_uninitialized.h \ + ${bits_srcdir}/stl_vector.h \ + ${bits_srcdir}/streambuf.tcc \ + ${bits_srcdir}/stringfwd.h \ + ${bits_srcdir}/type_traits.h \ + ${bits_srcdir}/valarray_array.h \ + ${bits_srcdir}/valarray_array.tcc \ + ${bits_srcdir}/valarray_meta.h + + backward_srcdir = ${glibcpp_srcdir}/include/backward + backward_builddir = ./backward + backward_headers = \ + ${backward_srcdir}/complex.h \ + ${backward_srcdir}/iomanip.h \ + ${backward_srcdir}/istream.h \ + ${backward_srcdir}/ostream.h \ + ${backward_srcdir}/stream.h \ + ${backward_srcdir}/streambuf.h \ + ${backward_srcdir}/algo.h \ + ${backward_srcdir}/algobase.h \ + ${backward_srcdir}/alloc.h \ + ${backward_srcdir}/bvector.h \ + ${backward_srcdir}/defalloc.h \ + ${backward_srcdir}/deque.h \ + ${backward_srcdir}/function.h \ + ${backward_srcdir}/hash_map.h \ + ${backward_srcdir}/hash_set.h \ + ${backward_srcdir}/hashtable.h \ + ${backward_srcdir}/heap.h \ + ${backward_srcdir}/iostream.h \ + ${backward_srcdir}/iterator.h \ + ${backward_srcdir}/list.h \ + ${backward_srcdir}/map.h \ + ${backward_srcdir}/multimap.h \ + ${backward_srcdir}/new.h \ + ${backward_srcdir}/multiset.h \ + ${backward_srcdir}/pair.h \ + ${backward_srcdir}/queue.h \ + ${backward_srcdir}/rope.h \ + ${backward_srcdir}/set.h \ + ${backward_srcdir}/slist.h \ + ${backward_srcdir}/stack.h \ + ${backward_srcdir}/tempbuf.h \ + ${backward_srcdir}/tree.h \ + ${backward_srcdir}/vector.h \ + ${backward_srcdir}/fstream.h \ + ${backward_srcdir}/strstream.h \ + ${backward_srcdir}/strstream \ + ${backward_srcdir}/backward_warning.h + + ext_srcdir = ${glibcpp_srcdir}/include/ext + ext_builddir = ./ext + ext_headers = \ + ${ext_srcdir}/rope \ + ${ext_srcdir}/ropeimpl.h \ + ${ext_srcdir}/stl_rope.h \ + ${ext_srcdir}/slist \ + ${ext_srcdir}/hash_map \ + ${ext_srcdir}/hash_set \ + ${ext_srcdir}/stl_hashtable.h \ + ${ext_srcdir}/stl_hash_fun.h + + # This is the common subset of files that all three "C" header models use. + c_base_srcdir = @C_INCLUDE_DIR@/bits + c_base_builddir = ./bits + c_base_headers = \ + ${c_base_srcdir}/std_cassert.h \ + ${c_base_srcdir}/std_cctype.h \ + ${c_base_srcdir}/std_cerrno.h \ + ${c_base_srcdir}/std_cfloat.h \ + ${c_base_srcdir}/std_climits.h \ + ${c_base_srcdir}/std_clocale.h \ + ${c_base_srcdir}/std_cmath.h \ + ${c_base_srcdir}/std_csetjmp.h \ + ${c_base_srcdir}/std_csignal.h \ + ${c_base_srcdir}/std_cstdarg.h \ + ${c_base_srcdir}/std_cstddef.h \ + ${c_base_srcdir}/std_cstdio.h \ + ${c_base_srcdir}/std_cstdlib.h \ + ${c_base_srcdir}/std_cstring.h \ + ${c_base_srcdir}/std_ctime.h \ + ${c_base_srcdir}/std_cwchar.h \ + ${c_base_srcdir}/std_cwctype.h \ + ${c_base_srcdir}/cmath.tcc + + ##c_compatibility_srcdir = ${glibcpp_srcdir}/include/c_compatibility + ##c_compatibility_builddir = ./ + ##c_compatibility_headers = \ + ## ${c_compatibility_srcdir}/assert.h \ + ## ${c_compatibility_srcdir}/ctype.h \ + ## ${c_compatibility_srcdir}/errno.h \ + ## ${c_compatibility_srcdir}/float.h \ + ## ${c_compatibility_srcdir}/limits.h \ + ## ${c_compatibility_srcdir}/locale.h \ + ## ${c_compatibility_srcdir}/math.h \ + ## ${c_compatibility_srcdir}/setjmp.h \ + ## ${c_compatibility_srcdir}/signal.h \ + ## ${c_compatibility_srcdir}/stdarg.h \ + ## ${c_compatibility_srcdir}/stddef.h \ + ## ${c_compatibility_srcdir}/stdio.h \ + ## ${c_compatibility_srcdir}/stdlib.h \ + ## ${c_compatibility_srcdir}/string.h \ + ## ${c_compatibility_srcdir}/time.h \ + ## ${c_compatibility_srcdir}/wchar.h \ + ## ${c_compatibility_srcdir}/wctype.h + + std_srcdir = ${glibcpp_srcdir}/include/std + std_builddir = ./ + std_headers = \ + ${std_srcdir}/algorithm \ + ${std_srcdir}/bitset \ + ${std_srcdir}/complex \ + ${std_srcdir}/deque \ + ${std_srcdir}/fstream \ + ${std_srcdir}/functional \ + ${std_srcdir}/iomanip \ + ${std_srcdir}/ios \ + ${std_srcdir}/iosfwd \ + ${std_srcdir}/iostream \ + ${std_srcdir}/istream \ + ${std_srcdir}/iterator \ + ${std_srcdir}/limits \ + ${std_srcdir}/list \ + ${std_srcdir}/locale \ + ${std_srcdir}/map \ + ${std_srcdir}/memory \ + ${std_srcdir}/numeric \ + ${std_srcdir}/ostream \ + ${std_srcdir}/queue \ + ${std_srcdir}/set \ + ${std_srcdir}/sstream \ + ${std_srcdir}/stack \ + ${std_srcdir}/stdexcept \ + ${std_srcdir}/streambuf \ + ${std_srcdir}/string \ + ${std_srcdir}/utility \ + ${std_srcdir}/valarray \ + ${std_srcdir}/vector \ + ${std_srcdir}/cassert \ + ${std_srcdir}/cctype \ + ${std_srcdir}/cerrno \ + ${std_srcdir}/cfloat \ + ${std_srcdir}/climits \ + ${std_srcdir}/clocale \ + ${std_srcdir}/ciso646 \ + ${std_srcdir}/cmath \ + ${std_srcdir}/csetjmp \ + ${std_srcdir}/csignal \ + ${std_srcdir}/cstdarg \ + ${std_srcdir}/cstddef \ + ${std_srcdir}/cstdio \ + ${std_srcdir}/cstdlib \ + ${std_srcdir}/cstring \ + ${std_srcdir}/ctime \ + ${std_srcdir}/cwchar \ + ${std_srcdir}/cwctype + + target_srcdir = ${glibcpp_srcdir}/@OS_INC_SRCDIR@ + target_builddir = ./${target_alias}/bits + target_headers = \ + ${target_srcdir}/ctype_base.h \ + ${target_srcdir}/ctype_inline.h \ + ${target_srcdir}/ctype_noninline.h \ + ${target_srcdir}/os_defines.h \ + ${glibcpp_srcdir}/@ATOMICITY_INC_SRCDIR@/atomicity.h \ + ${glibcpp_srcdir}/@LIMITS_INC_SRCDIR@/limits.h + + thread_builddir = ./${target_alias}/bits + thread_headers = \ + ${thread_builddir}/gthr.h \ + ${thread_builddir}/gthr-single.h \ + ${thread_builddir}/gthr-default.h + + # List of all timestamp files. By keeping only one copy of this list, both + # CLEANFILES and all-local are kept up-to-date. + # XXX stamp-c_compatibility + allstamps = stamp-std stamp-bits stamp-c_base stamp-backward stamp-ext \ + stamp-target stamp-thread stamp-file_model stamp-io stamp-locale + + # By adding these files here, automake will remove them for 'make clean' + CLEANFILES = ${allstamps} + + # Here are the rules for building the headers + all-local: \ + ${target_builddir}/c++config.h \ + ${allstamps} + + stamp-std: ${std_headers} + @if [ ! -d "${std_builddir}" ]; then \ + mkdir -p ${std_builddir} ;\ + fi ;\ + (cd ${std_builddir} && @LN_S@ $? .) ;\ + echo `date` > stamp-std + + stamp-bits: ${bits_headers} + @if [ ! -d "${bits_builddir}" ]; then \ + mkdir -p ${bits_builddir} ;\ + fi ;\ + (cd ${bits_builddir} && @LN_S@ $? .) ;\ + echo `date` > stamp-bits + + stamp-c_base: ${c_base_headers} + @if [ ! -d "${c_base_builddir}" ]; then \ + mkdir -p ${c_base_builddir} ;\ + fi ;\ + (cd ${c_base_builddir} && @LN_S@ $? .) ;\ + echo `date` > stamp-c_base + + stamp-c_compatibility: ${c_compatibility_headers} + @if [ ! -d "${c_compatibility_builddir}" ]; then \ + mkdir -p ${c_compatibility_builddir} ;\ + fi ;\ + (cd ${c_compatibility_builddir} && @LN_S@ $? .) ;\ + echo `date` > stamp-c_compatibility + + stamp-backward: ${backward_headers} + @if [ ! -d "${backward_builddir}" ]; then \ + mkdir -p ${backward_builddir} ;\ + fi ;\ + (cd ${backward_builddir} && @LN_S@ $? .) ;\ + echo `date` > stamp-backward + + stamp-ext: ${ext_headers} + @if [ ! -d "${ext_builddir}" ]; then \ + mkdir -p ${ext_builddir} ;\ + fi ;\ + (cd ${ext_builddir} && @LN_S@ $? .) ;\ + echo `date` > stamp-ext + + # Can't use $? in command, otherwise target_builddir will trigger it, and + # we get bizarre symlinks mazes. + stamp-target: ${target_headers} ${target_builddir} + @(cd ${target_builddir} && @LN_S@ ${target_headers} .) ;\ + echo `date` > stamp-target + + stamp-thread: ${thread_headers} ${thread_builddir} + @echo `date` > stamp-thread + + stamp-file_model: ${glibcpp_srcdir}/@BASIC_FILE_H@ ${target_builddir} + @(cd ${target_builddir} && @LN_S@ ${glibcpp_srcdir}/@BASIC_FILE_H@ basic_file_model.h) ;\ + echo `date` > stamp-file_model + + stamp-io: ${glibcpp_srcdir}/@CSTDIO_H@ ${target_builddir} + @(cd ${target_builddir} && @LN_S@ ${glibcpp_srcdir}/@CSTDIO_H@ c++io.h) ;\ + echo `date` > stamp-io + + stamp-locale: ${glibcpp_srcdir}/@CLOCALE_H@ ${target_builddir} + @(cd ${target_builddir} && @LN_S@ ${glibcpp_srcdir}/@CLOCALE_H@ c++locale.h) ;\ + echo `date` > stamp-locale + + # This target is kinda special. The timestamp on a directory gets modified + # whenever a file it contains gets modified, and that'll throw off all the + # build dependencies that need this target. On the other hand, someone + # could delete the directory and not the stamp file, faking out the make. + ${target_builddir}: stamp-${target_alias} + + stamp-${target_alias}: + @if [ ! -d ${target_builddir} ]; then \ + mkdir -p ${target_builddir} ;\ + fi + echo `date` > stamp-${target_alias} + + ${target_builddir}/c++config.h: ../config.h \ + ${glibcpp_srcdir}/include/bits/c++config \ + ${target_builddir} + @cat ${glibcpp_srcdir}/include/bits/c++config > $@ ;\ + sed -e 's/HAVE_/_GLIBCPP_HAVE_/g' \ + -e 's/PACKAGE/_GLIBCPP_PACKAGE/g' \ + -e 's/VERSION/_GLIBCPP_VERSION/g' \ + -e 's/WORDS_/_GLIBCPP_WORDS_/g' \ + < ${glibcpp_builddir}/config.h >> $@ ;\ + echo "#endif // _CPP_CPPCONFIG_" >>$@ + + glibcpp_thread_h = @glibcpp_thread_h@ + uppercase = [ABCDEFGHIJKLMNOPQRSTUVWXYZ_] + + ${thread_builddir}/gthr.h: + sed -e '/^#/s/\(${uppercase}${uppercase}*\)/_GLIBCPP_\1/g' \ + -e 's,^#include "\(.*\)",#include ,g' \ + < ${glibcpp_srcdir}/../gcc/gthr.h > $@ + + ${thread_builddir}/gthr-single.h: + sed -e 's/\(UNUSED\)/_GLIBCPP_\1/g' \ + -e 's/\(GCC${uppercase}*_H\)/_GLIBCPP_\1/g' \ + < ${glibcpp_srcdir}/../gcc/gthr-single.h > $@ + + ${thread_builddir}/gthr-default.h: + sed -e 's/\(UNUSED\)/_GLIBCPP_\1/g' \ + -e 's/\(GCC${uppercase}*_H\)/_GLIBCPP_\1/g' \ + -e 's/\(${uppercase}*WEAK\)/_GLIBCPP_\1/g' \ + < ${glibcpp_srcdir}/../gcc/${glibcpp_thread_h} > $@ + + # One big happy istallation: just copy everything from the build to the + # install tree (except for the build stamps). + gxx_include_dir = @gxx_include_dir@ + + install-data-local: + for file in `find . ! -name stamp-\* -print`; do \ + installFile=${gxx_include_dir}/$${file} ;\ + if [ -d $${file} ]; then \ + $(INSTALL) -d $${installFile} ;\ + else \ + $(INSTALL_DATA) $${file} $${installFile} ;\ + fi ;\ + done + diff -Nrc3pad gcc-3.0/libstdc++-v3/include/Makefile.in gcc-3.0.1/libstdc++-v3/include/Makefile.in *** gcc-3.0/libstdc++-v3/include/Makefile.in Wed Dec 31 16:00:00 1969 --- gcc-3.0.1/libstdc++-v3/include/Makefile.in Fri Aug 17 22:02:27 2001 *************** *** 0 **** --- 1,405 ---- + # Makefile.in generated automatically by automake 1.4 from Makefile.am + + # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. + # This Makefile.in is free software; the Free Software Foundation + # gives unlimited permission to copy and/or distribute it, + # with or without modifications, as long as this notice is preserved. + + # This program is distributed in the hope that it will be useful, + # but WITHOUT ANY WARRANTY, to the extent permitted by law; without + # even the implied warranty of MERCHANTABILITY or FITNESS FOR A + # PARTICULAR PURPOSE. + + + SHELL = @SHELL@ + + srcdir = @srcdir@ + top_srcdir = @top_srcdir@ + VPATH = @srcdir@ + prefix = @prefix@ + exec_prefix = @exec_prefix@ + + bindir = @bindir@ + sbindir = @sbindir@ + libexecdir = @libexecdir@ + datadir = @datadir@ + sysconfdir = @sysconfdir@ + sharedstatedir = @sharedstatedir@ + localstatedir = @localstatedir@ + libdir = @libdir@ + infodir = @infodir@ + mandir = @mandir@ + includedir = @includedir@ + oldincludedir = /usr/include + + DESTDIR = + + pkgdatadir = $(datadir)/@PACKAGE@ + pkglibdir = $(libdir)/@PACKAGE@ + pkgincludedir = $(includedir)/@PACKAGE@ + + top_builddir = .. + + ACLOCAL = @ACLOCAL@ + AUTOCONF = @AUTOCONF@ + AUTOMAKE = @AUTOMAKE@ + AUTOHEADER = @AUTOHEADER@ + + INSTALL = @INSTALL@ + INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) + INSTALL_DATA = @INSTALL_DATA@ + INSTALL_SCRIPT = @INSTALL_SCRIPT@ + transform = @program_transform_name@ + + NORMAL_INSTALL = : + PRE_INSTALL = : + POST_INSTALL = : + NORMAL_UNINSTALL = : + PRE_UNINSTALL = : + POST_UNINSTALL = : + build_alias = @build_alias@ + build_triplet = @build@ + host_alias = @host_alias@ + host_triplet = @host@ + target_alias = @target_alias@ + target_triplet = @target@ + AR = @AR@ + AS = @AS@ + ATOMICITY_INC_SRCDIR = @ATOMICITY_INC_SRCDIR@ + BASIC_FILE_H = @BASIC_FILE_H@ + CC = @CC@ + CCODECVT_C = @CCODECVT_C@ + CLOCALE_H = @CLOCALE_H@ + CPP = @CPP@ + CSHADOW_FLAGS = @CSHADOW_FLAGS@ + CSTDIO_H = @CSTDIO_H@ + CXXCPP = @CXXCPP@ + C_INCLUDE_DIR = @C_INCLUDE_DIR@ + DEBUG_FLAGS = @DEBUG_FLAGS@ + DLLTOOL = @DLLTOOL@ + EXEEXT = @EXEEXT@ + EXTRA_CXX_FLAGS = @EXTRA_CXX_FLAGS@ + GCJ = @GCJ@ + GCJFLAGS = @GCJFLAGS@ + GLIBCPP_INCLUDES = @GLIBCPP_INCLUDES@ + GLIBCPP_IS_CROSS_COMPILING = @GLIBCPP_IS_CROSS_COMPILING@ + LIBIO_INCLUDES = @LIBIO_INCLUDES@ + LIBMATHOBJS = @LIBMATHOBJS@ + LIBMATH_INCLUDES = @LIBMATH_INCLUDES@ + LIBSTRINGOBJS = @LIBSTRINGOBJS@ + LIBSUPCXX_INCLUDES = @LIBSUPCXX_INCLUDES@ + LIBSUPCXX_PICFLAGS = @LIBSUPCXX_PICFLAGS@ + LIBTOOL = @LIBTOOL@ + LIMITS_INC_SRCDIR = @LIMITS_INC_SRCDIR@ + LN_S = @LN_S@ + MAINT = @MAINT@ + MAKEINFO = @MAKEINFO@ + OBJDUMP = @OBJDUMP@ + OBJEXT = @OBJEXT@ + OPTIMIZE_CXXFLAGS = @OPTIMIZE_CXXFLAGS@ + OPT_LDFLAGS = @OPT_LDFLAGS@ + OS_INC_SRCDIR = @OS_INC_SRCDIR@ + PACKAGE = @PACKAGE@ + RANLIB = @RANLIB@ + SECTION_FLAGS = @SECTION_FLAGS@ + SECTION_LDFLAGS = @SECTION_LDFLAGS@ + STRIP = @STRIP@ + TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@ + USE_COMPLEX_LONG_DOUBLE = @USE_COMPLEX_LONG_DOUBLE@ + VERSION = @VERSION@ + WARN_FLAGS = @WARN_FLAGS@ + WERROR = @WERROR@ + enable_shared = @enable_shared@ + enable_static = @enable_static@ + glibcpp_CXX = @glibcpp_CXX@ + glibcpp_basedir = @glibcpp_basedir@ + glibcpp_prefixdir = @glibcpp_prefixdir@ + glibcpp_toolexecdir = @glibcpp_toolexecdir@ + glibcpp_toolexeclibdir = @glibcpp_toolexeclibdir@ + ifGNUmake = @ifGNUmake@ + libio_la = @libio_la@ + toplevel_srcdir = @toplevel_srcdir@ + + AUTOMAKE_OPTIONS = 1.3 gnits + MAINT_CHARSET = latin1 + + mkinstalldirs = $(SHELL) $(toplevel_srcdir)/mkinstalldirs + + # Cross compiler and multilib support. + CXX = @glibcpp_CXX@ + glibcpp_srcdir = @glibcpp_srcdir@ + glibcpp_builddir = @glibcpp_builddir@ + + bits_srcdir = ${glibcpp_srcdir}/include/bits + bits_builddir = ./bits + bits_headers = ${bits_srcdir}/basic_file.h ${bits_srcdir}/basic_ios.h ${bits_srcdir}/basic_ios.tcc ${bits_srcdir}/basic_string.h ${bits_srcdir}/basic_string.tcc ${bits_srcdir}/boost_concept_check.h ${bits_srcdir}/char_traits.h ${bits_srcdir}/codecvt.h ${bits_srcdir}/concept_check.h ${bits_srcdir}/cpp_type_traits.h ${bits_srcdir}/fpos.h ${bits_srcdir}/fstream.tcc ${bits_srcdir}/functexcept.h ${bits_srcdir}/generic_shadow.h ${bits_srcdir}/gslice.h ${bits_srcdir}/gslice_array.h ${bits_srcdir}/indirect_array.h ${bits_srcdir}/ios_base.h ${bits_srcdir}/istream.tcc ${bits_srcdir}/locale_facets.h ${bits_srcdir}/locale_facets.tcc ${bits_srcdir}/localefwd.h ${bits_srcdir}/mask_array.h ${bits_srcdir}/ostream.tcc ${bits_srcdir}/pthread_allocimpl.h ${bits_srcdir}/sbuf_iter.h ${bits_srcdir}/slice.h ${bits_srcdir}/slice_array.h ${bits_srcdir}/sstream.tcc ${bits_srcdir}/std_algorithm.h ${bits_srcdir}/std_bitset.h ${bits_srcdir}/std_complex.h ${bits_srcdir}/std_deque.h ${bits_srcdir}/std_fstream.h ${bits_srcdir}/std_functional.h ${bits_srcdir}/std_iomanip.h ${bits_srcdir}/std_ios.h ${bits_srcdir}/std_iosfwd.h ${bits_srcdir}/std_iostream.h ${bits_srcdir}/std_istream.h ${bits_srcdir}/std_iterator.h ${bits_srcdir}/std_limits.h ${bits_srcdir}/std_list.h ${bits_srcdir}/std_locale.h ${bits_srcdir}/std_map.h ${bits_srcdir}/std_memory.h ${bits_srcdir}/std_numeric.h ${bits_srcdir}/std_ostream.h ${bits_srcdir}/std_queue.h ${bits_srcdir}/std_set.h ${bits_srcdir}/std_sstream.h ${bits_srcdir}/std_stack.h ${bits_srcdir}/std_stdexcept.h ${bits_srcdir}/std_streambuf.h ${bits_srcdir}/std_string.h ${bits_srcdir}/std_utility.h ${bits_srcdir}/std_valarray.h ${bits_srcdir}/std_vector.h ${bits_srcdir}/stl_algo.h ${bits_srcdir}/stl_algobase.h ${bits_srcdir}/stl_alloc.h ${bits_srcdir}/stl_bvector.h ${bits_srcdir}/stl_construct.h ${bits_srcdir}/stl_deque.h ${bits_srcdir}/stl_function.h ${bits_srcdir}/stl_heap.h ${bits_srcdir}/stl_iterator.h ${bits_srcdir}/stl_iterator_base_funcs.h ${bits_srcdir}/stl_iterator_base_types.h ${bits_srcdir}/stl_list.h ${bits_srcdir}/stl_map.h ${bits_srcdir}/stl_multimap.h ${bits_srcdir}/stl_multiset.h ${bits_srcdir}/stl_numeric.h ${bits_srcdir}/stl_pair.h ${bits_srcdir}/stl_pthread_alloc.h ${bits_srcdir}/stl_queue.h ${bits_srcdir}/stl_raw_storage_iter.h ${bits_srcdir}/stl_relops.h ${bits_srcdir}/stl_set.h ${bits_srcdir}/stl_stack.h ${bits_srcdir}/stl_tempbuf.h ${bits_srcdir}/stl_threads.h ${bits_srcdir}/stl_tree.h ${bits_srcdir}/stl_uninitialized.h ${bits_srcdir}/stl_vector.h ${bits_srcdir}/streambuf.tcc ${bits_srcdir}/stringfwd.h ${bits_srcdir}/type_traits.h ${bits_srcdir}/valarray_array.h ${bits_srcdir}/valarray_array.tcc ${bits_srcdir}/valarray_meta.h + + + backward_srcdir = ${glibcpp_srcdir}/include/backward + backward_builddir = ./backward + backward_headers = ${backward_srcdir}/complex.h ${backward_srcdir}/iomanip.h ${backward_srcdir}/istream.h ${backward_srcdir}/ostream.h ${backward_srcdir}/stream.h ${backward_srcdir}/streambuf.h ${backward_srcdir}/algo.h ${backward_srcdir}/algobase.h ${backward_srcdir}/alloc.h ${backward_srcdir}/bvector.h ${backward_srcdir}/defalloc.h ${backward_srcdir}/deque.h ${backward_srcdir}/function.h ${backward_srcdir}/hash_map.h ${backward_srcdir}/hash_set.h ${backward_srcdir}/hashtable.h ${backward_srcdir}/heap.h ${backward_srcdir}/iostream.h ${backward_srcdir}/iterator.h ${backward_srcdir}/list.h ${backward_srcdir}/map.h ${backward_srcdir}/multimap.h ${backward_srcdir}/new.h ${backward_srcdir}/multiset.h ${backward_srcdir}/pair.h ${backward_srcdir}/queue.h ${backward_srcdir}/rope.h ${backward_srcdir}/set.h ${backward_srcdir}/slist.h ${backward_srcdir}/stack.h ${backward_srcdir}/tempbuf.h ${backward_srcdir}/tree.h ${backward_srcdir}/vector.h ${backward_srcdir}/fstream.h ${backward_srcdir}/strstream.h ${backward_srcdir}/strstream ${backward_srcdir}/backward_warning.h + + + ext_srcdir = ${glibcpp_srcdir}/include/ext + ext_builddir = ./ext + ext_headers = ${ext_srcdir}/rope ${ext_srcdir}/ropeimpl.h ${ext_srcdir}/stl_rope.h ${ext_srcdir}/slist ${ext_srcdir}/hash_map ${ext_srcdir}/hash_set ${ext_srcdir}/stl_hashtable.h ${ext_srcdir}/stl_hash_fun.h + + + # This is the common subset of files that all three "C" header models use. + c_base_srcdir = @C_INCLUDE_DIR@/bits + c_base_builddir = ./bits + c_base_headers = ${c_base_srcdir}/std_cassert.h ${c_base_srcdir}/std_cctype.h ${c_base_srcdir}/std_cerrno.h ${c_base_srcdir}/std_cfloat.h ${c_base_srcdir}/std_climits.h ${c_base_srcdir}/std_clocale.h ${c_base_srcdir}/std_cmath.h ${c_base_srcdir}/std_csetjmp.h ${c_base_srcdir}/std_csignal.h ${c_base_srcdir}/std_cstdarg.h ${c_base_srcdir}/std_cstddef.h ${c_base_srcdir}/std_cstdio.h ${c_base_srcdir}/std_cstdlib.h ${c_base_srcdir}/std_cstring.h ${c_base_srcdir}/std_ctime.h ${c_base_srcdir}/std_cwchar.h ${c_base_srcdir}/std_cwctype.h ${c_base_srcdir}/cmath.tcc + + + std_srcdir = ${glibcpp_srcdir}/include/std + std_builddir = ./ + std_headers = ${std_srcdir}/algorithm ${std_srcdir}/bitset ${std_srcdir}/complex ${std_srcdir}/deque ${std_srcdir}/fstream ${std_srcdir}/functional ${std_srcdir}/iomanip ${std_srcdir}/ios ${std_srcdir}/iosfwd ${std_srcdir}/iostream ${std_srcdir}/istream ${std_srcdir}/iterator ${std_srcdir}/limits ${std_srcdir}/list ${std_srcdir}/locale ${std_srcdir}/map ${std_srcdir}/memory ${std_srcdir}/numeric ${std_srcdir}/ostream ${std_srcdir}/queue ${std_srcdir}/set ${std_srcdir}/sstream ${std_srcdir}/stack ${std_srcdir}/stdexcept ${std_srcdir}/streambuf ${std_srcdir}/string ${std_srcdir}/utility ${std_srcdir}/valarray ${std_srcdir}/vector ${std_srcdir}/cassert ${std_srcdir}/cctype ${std_srcdir}/cerrno ${std_srcdir}/cfloat ${std_srcdir}/climits ${std_srcdir}/clocale ${std_srcdir}/ciso646 ${std_srcdir}/cmath ${std_srcdir}/csetjmp ${std_srcdir}/csignal ${std_srcdir}/cstdarg ${std_srcdir}/cstddef ${std_srcdir}/cstdio ${std_srcdir}/cstdlib ${std_srcdir}/cstring ${std_srcdir}/ctime ${std_srcdir}/cwchar ${std_srcdir}/cwctype + + + target_srcdir = ${glibcpp_srcdir}/@OS_INC_SRCDIR@ + target_builddir = ./${target_alias}/bits + target_headers = ${target_srcdir}/ctype_base.h ${target_srcdir}/ctype_inline.h ${target_srcdir}/ctype_noninline.h ${target_srcdir}/os_defines.h ${glibcpp_srcdir}/@ATOMICITY_INC_SRCDIR@/atomicity.h ${glibcpp_srcdir}/@LIMITS_INC_SRCDIR@/limits.h + + + thread_builddir = ./${target_alias}/bits + thread_headers = ${thread_builddir}/gthr.h ${thread_builddir}/gthr-single.h ${thread_builddir}/gthr-default.h + + + # List of all timestamp files. By keeping only one copy of this list, both + # CLEANFILES and all-local are kept up-to-date. + # XXX stamp-c_compatibility + allstamps = stamp-std stamp-bits stamp-c_base stamp-backward stamp-ext stamp-target stamp-thread stamp-file_model stamp-io stamp-locale + + + # By adding these files here, automake will remove them for 'make clean' + CLEANFILES = ${allstamps} + + glibcpp_thread_h = @glibcpp_thread_h@ + uppercase = [ABCDEFGHIJKLMNOPQRSTUVWXYZ_] + + # One big happy istallation: just copy everything from the build to the + # install tree (except for the build stamps). + gxx_include_dir = @gxx_include_dir@ + CONFIG_HEADER = ../config.h + CONFIG_CLEAN_FILES = + DIST_COMMON = Makefile.am Makefile.in + + + DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + + TAR = gtar + GZIP_ENV = --best + all: all-redirect + .SUFFIXES: + $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && $(AUTOMAKE) --cygnus include/Makefile + + Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + tags: TAGS + TAGS: + + + distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + + subdir = include + + distdir: $(DISTFILES) + @for file in $(DISTFILES); do \ + if test -f $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + cp -pr $$d/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + info-am: + info: info-am + dvi-am: + dvi: dvi-am + check-am: + check: check-am + installcheck-am: + installcheck: installcheck-am + install-info-am: + install-info: install-info-am + install-exec-am: + install-exec: install-exec-am + + install-data-am: install-data-local + install-data: install-data-am + + install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + install: install-am + uninstall-am: + uninstall: uninstall-am + all-am: Makefile all-local + all-redirect: all-am + install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install + installdirs: + + + mostlyclean-generic: + + clean-generic: + -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) + + distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + -rm -f config.cache config.log stamp-h stamp-h[0-9]* + + maintainer-clean-generic: + mostlyclean-am: mostlyclean-generic + + mostlyclean: mostlyclean-am + + clean-am: clean-generic mostlyclean-am + + clean: clean-am + + distclean-am: distclean-generic clean-am + -rm -f libtool + + distclean: distclean-am + + maintainer-clean-am: maintainer-clean-generic distclean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + + maintainer-clean: maintainer-clean-am + + .PHONY: tags distdir info-am info dvi-am dvi check check-am \ + installcheck-am installcheck install-info-am install-info \ + install-exec-am install-exec install-data-local install-data-am \ + install-data install-am install uninstall-am uninstall all-local \ + all-redirect all-am all installdirs mostlyclean-generic \ + distclean-generic clean-generic maintainer-clean-generic clean \ + mostlyclean distclean maintainer-clean + + + # Here are the rules for building the headers + all-local: \ + ${target_builddir}/c++config.h \ + ${allstamps} + + stamp-std: ${std_headers} + @if [ ! -d "${std_builddir}" ]; then \ + mkdir -p ${std_builddir} ;\ + fi ;\ + (cd ${std_builddir} && @LN_S@ $? .) ;\ + echo `date` > stamp-std + + stamp-bits: ${bits_headers} + @if [ ! -d "${bits_builddir}" ]; then \ + mkdir -p ${bits_builddir} ;\ + fi ;\ + (cd ${bits_builddir} && @LN_S@ $? .) ;\ + echo `date` > stamp-bits + + stamp-c_base: ${c_base_headers} + @if [ ! -d "${c_base_builddir}" ]; then \ + mkdir -p ${c_base_builddir} ;\ + fi ;\ + (cd ${c_base_builddir} && @LN_S@ $? .) ;\ + echo `date` > stamp-c_base + + stamp-c_compatibility: ${c_compatibility_headers} + @if [ ! -d "${c_compatibility_builddir}" ]; then \ + mkdir -p ${c_compatibility_builddir} ;\ + fi ;\ + (cd ${c_compatibility_builddir} && @LN_S@ $? .) ;\ + echo `date` > stamp-c_compatibility + + stamp-backward: ${backward_headers} + @if [ ! -d "${backward_builddir}" ]; then \ + mkdir -p ${backward_builddir} ;\ + fi ;\ + (cd ${backward_builddir} && @LN_S@ $? .) ;\ + echo `date` > stamp-backward + + stamp-ext: ${ext_headers} + @if [ ! -d "${ext_builddir}" ]; then \ + mkdir -p ${ext_builddir} ;\ + fi ;\ + (cd ${ext_builddir} && @LN_S@ $? .) ;\ + echo `date` > stamp-ext + + # Can't use $? in command, otherwise target_builddir will trigger it, and + # we get bizarre symlinks mazes. + stamp-target: ${target_headers} ${target_builddir} + @(cd ${target_builddir} && @LN_S@ ${target_headers} .) ;\ + echo `date` > stamp-target + + stamp-thread: ${thread_headers} ${thread_builddir} + @echo `date` > stamp-thread + + stamp-file_model: ${glibcpp_srcdir}/@BASIC_FILE_H@ ${target_builddir} + @(cd ${target_builddir} && @LN_S@ ${glibcpp_srcdir}/@BASIC_FILE_H@ basic_file_model.h) ;\ + echo `date` > stamp-file_model + + stamp-io: ${glibcpp_srcdir}/@CSTDIO_H@ ${target_builddir} + @(cd ${target_builddir} && @LN_S@ ${glibcpp_srcdir}/@CSTDIO_H@ c++io.h) ;\ + echo `date` > stamp-io + + stamp-locale: ${glibcpp_srcdir}/@CLOCALE_H@ ${target_builddir} + @(cd ${target_builddir} && @LN_S@ ${glibcpp_srcdir}/@CLOCALE_H@ c++locale.h) ;\ + echo `date` > stamp-locale + + # This target is kinda special. The timestamp on a directory gets modified + # whenever a file it contains gets modified, and that'll throw off all the + # build dependencies that need this target. On the other hand, someone + # could delete the directory and not the stamp file, faking out the make. + ${target_builddir}: stamp-${target_alias} + + stamp-${target_alias}: + @if [ ! -d ${target_builddir} ]; then \ + mkdir -p ${target_builddir} ;\ + fi + echo `date` > stamp-${target_alias} + + ${target_builddir}/c++config.h: ../config.h \ + ${glibcpp_srcdir}/include/bits/c++config \ + ${target_builddir} + @cat ${glibcpp_srcdir}/include/bits/c++config > $@ ;\ + sed -e 's/HAVE_/_GLIBCPP_HAVE_/g' \ + -e 's/PACKAGE/_GLIBCPP_PACKAGE/g' \ + -e 's/VERSION/_GLIBCPP_VERSION/g' \ + -e 's/WORDS_/_GLIBCPP_WORDS_/g' \ + < ${glibcpp_builddir}/config.h >> $@ ;\ + echo "#endif // _CPP_CPPCONFIG_" >>$@ + + ${thread_builddir}/gthr.h: + sed -e '/^#/s/\(${uppercase}${uppercase}*\)/_GLIBCPP_\1/g' \ + -e 's,^#include "\(.*\)",#include ,g' \ + < ${glibcpp_srcdir}/../gcc/gthr.h > $@ + + ${thread_builddir}/gthr-single.h: + sed -e 's/\(UNUSED\)/_GLIBCPP_\1/g' \ + -e 's/\(GCC${uppercase}*_H\)/_GLIBCPP_\1/g' \ + < ${glibcpp_srcdir}/../gcc/gthr-single.h > $@ + + ${thread_builddir}/gthr-default.h: + sed -e 's/\(UNUSED\)/_GLIBCPP_\1/g' \ + -e 's/\(GCC${uppercase}*_H\)/_GLIBCPP_\1/g' \ + -e 's/\(${uppercase}*WEAK\)/_GLIBCPP_\1/g' \ + < ${glibcpp_srcdir}/../gcc/${glibcpp_thread_h} > $@ + + install-data-local: + for file in `find . ! -name stamp-\* -print`; do \ + installFile=${gxx_include_dir}/$${file} ;\ + if [ -d $${file} ]; then \ + $(INSTALL) -d $${installFile} ;\ + else \ + $(INSTALL_DATA) $${file} $${installFile} ;\ + fi ;\ + done + + # Tell versions [3.59,3.63) of GNU make to not export all variables. + # Otherwise a system limit (for SysV at least) may be exceeded. + .NOEXPORT: diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/algo.h gcc-3.0.1/libstdc++-v3/include/backward/algo.h *** gcc-3.0/libstdc++-v3/include/backward/algo.h Mon May 14 12:48:58 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/algo.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/algobase.h gcc-3.0.1/libstdc++-v3/include/backward/algobase.h *** gcc-3.0/libstdc++-v3/include/backward/algobase.h Mon May 14 12:48:59 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/algobase.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/alloc.h gcc-3.0.1/libstdc++-v3/include/backward/alloc.h *** gcc-3.0/libstdc++-v3/include/backward/alloc.h Mon May 14 12:48:59 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/alloc.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * Copyright (c) 1996-1997 * Silicon Graphics Computer Systems, Inc. diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/bvector.h gcc-3.0.1/libstdc++-v3/include/backward/bvector.h *** gcc-3.0/libstdc++-v3/include/backward/bvector.h Mon May 14 12:48:59 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/bvector.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/defalloc.h gcc-3.0.1/libstdc++-v3/include/backward/defalloc.h *** gcc-3.0/libstdc++-v3/include/backward/defalloc.h Mon May 14 12:48:59 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/defalloc.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/deque.h gcc-3.0.1/libstdc++-v3/include/backward/deque.h *** gcc-3.0/libstdc++-v3/include/backward/deque.h Mon May 14 12:49:00 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/deque.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/function.h gcc-3.0.1/libstdc++-v3/include/backward/function.h *** gcc-3.0/libstdc++-v3/include/backward/function.h Mon May 14 12:49:00 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/function.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/hash_map.h gcc-3.0.1/libstdc++-v3/include/backward/hash_map.h *** gcc-3.0/libstdc++-v3/include/backward/hash_map.h Mon May 14 12:49:00 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/hash_map.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * Copyright (c) 1996 * Silicon Graphics Computer Systems, Inc. diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/hash_set.h gcc-3.0.1/libstdc++-v3/include/backward/hash_set.h *** gcc-3.0/libstdc++-v3/include/backward/hash_set.h Mon May 14 12:49:01 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/hash_set.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * Copyright (c) 1996 * Silicon Graphics Computer Systems, Inc. diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/hashtable.h gcc-3.0.1/libstdc++-v3/include/backward/hashtable.h *** gcc-3.0/libstdc++-v3/include/backward/hashtable.h Mon May 14 12:49:01 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/hashtable.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * Copyright (c) 1996,1997 * Silicon Graphics Computer Systems, Inc. diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/heap.h gcc-3.0.1/libstdc++-v3/include/backward/heap.h *** gcc-3.0/libstdc++-v3/include/backward/heap.h Mon May 14 12:49:01 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/heap.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/iterator.h gcc-3.0.1/libstdc++-v3/include/backward/iterator.h *** gcc-3.0/libstdc++-v3/include/backward/iterator.h Mon May 14 12:49:01 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/iterator.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/list.h gcc-3.0.1/libstdc++-v3/include/backward/list.h *** gcc-3.0/libstdc++-v3/include/backward/list.h Mon May 14 12:49:01 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/list.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/map.h gcc-3.0.1/libstdc++-v3/include/backward/map.h *** gcc-3.0/libstdc++-v3/include/backward/map.h Mon May 14 12:49:01 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/map.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/multimap.h gcc-3.0.1/libstdc++-v3/include/backward/multimap.h *** gcc-3.0/libstdc++-v3/include/backward/multimap.h Mon May 14 12:49:01 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/multimap.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/multiset.h gcc-3.0.1/libstdc++-v3/include/backward/multiset.h *** gcc-3.0/libstdc++-v3/include/backward/multiset.h Mon May 14 12:49:01 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/multiset.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/pair.h gcc-3.0.1/libstdc++-v3/include/backward/pair.h *** gcc-3.0/libstdc++-v3/include/backward/pair.h Mon May 14 12:49:02 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/pair.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/rope.h gcc-3.0.1/libstdc++-v3/include/backward/rope.h *** gcc-3.0/libstdc++-v3/include/backward/rope.h Mon May 14 12:49:02 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/rope.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * Copyright (c) 1997 * Silicon Graphics Computer Systems, Inc. diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/set.h gcc-3.0.1/libstdc++-v3/include/backward/set.h *** gcc-3.0/libstdc++-v3/include/backward/set.h Mon May 14 12:49:02 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/set.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/slist.h gcc-3.0.1/libstdc++-v3/include/backward/slist.h *** gcc-3.0/libstdc++-v3/include/backward/slist.h Mon May 14 12:49:02 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/slist.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * Copyright (c) 1997 * Silicon Graphics Computer Systems, Inc. diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/stack.h gcc-3.0.1/libstdc++-v3/include/backward/stack.h *** gcc-3.0/libstdc++-v3/include/backward/stack.h Mon May 14 12:49:02 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/stack.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/strstream gcc-3.0.1/libstdc++-v3/include/backward/strstream *** gcc-3.0/libstdc++-v3/include/backward/strstream Mon May 14 12:49:02 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/strstream Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * Copyright (c) 1998 * Silicon Graphics Computer Systems, Inc. diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/tempbuf.h gcc-3.0.1/libstdc++-v3/include/backward/tempbuf.h *** gcc-3.0/libstdc++-v3/include/backward/tempbuf.h Mon May 14 12:49:02 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/tempbuf.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/tree.h gcc-3.0.1/libstdc++-v3/include/backward/tree.h *** gcc-3.0/libstdc++-v3/include/backward/tree.h Mon May 14 12:49:02 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/tree.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,31 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. /* * Copyright (c) 1997 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/backward/vector.h gcc-3.0.1/libstdc++-v3/include/backward/vector.h *** gcc-3.0/libstdc++-v3/include/backward/vector.h Mon May 14 12:49:02 2001 --- gcc-3.0.1/libstdc++-v3/include/backward/vector.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Backward-compat support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/basic_string.h gcc-3.0.1/libstdc++-v3/include/bits/basic_string.h *** gcc-3.0/libstdc++-v3/include/bits/basic_string.h Mon Jun 11 19:30:05 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/basic_string.h Thu Jul 19 17:14:09 2001 *************** namespace std *** 118,124 **** struct _Rep { // Types: ! typedef typename _Alloc::rebind::other _Raw_bytes_alloc; // (Public) Data members: --- 118,124 ---- struct _Rep { // Types: ! typedef typename _Alloc::template rebind::other _Raw_bytes_alloc; // (Public) Data members: diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/basic_string.tcc gcc-3.0.1/libstdc++-v3/include/bits/basic_string.tcc *** gcc-3.0/libstdc++-v3/include/bits/basic_string.tcc Mon Jun 11 19:30:05 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/basic_string.tcc Thu Jul 19 17:14:09 2001 *************** namespace std *** 354,360 **** #endif template ! basic_string<_CharT, _Traits, _Alloc>::_Rep* basic_string<_CharT, _Traits, _Alloc>::_Rep:: _S_create(size_t __capacity, const _Alloc& __alloc) { --- 354,360 ---- #endif template ! typename basic_string<_CharT, _Traits, _Alloc>::_Rep* basic_string<_CharT, _Traits, _Alloc>::_Rep:: _S_create(size_t __capacity, const _Alloc& __alloc) { *************** namespace std *** 571,577 **** } template ! basic_string<_CharT, _Traits, _Alloc>::size_type basic_string<_CharT, _Traits, _Alloc>:: copy(_CharT* __s, size_type __n, size_type __pos) const { --- 571,577 ---- } template ! typename basic_string<_CharT, _Traits, _Alloc>::size_type basic_string<_CharT, _Traits, _Alloc>:: copy(_CharT* __s, size_type __n, size_type __pos) const { *************** namespace std *** 587,593 **** } template ! basic_string<_CharT, _Traits, _Alloc>::size_type basic_string<_CharT, _Traits, _Alloc>:: find(const _CharT* __s, size_type __pos, size_type __n) const { --- 587,593 ---- } template ! typename basic_string<_CharT, _Traits, _Alloc>::size_type basic_string<_CharT, _Traits, _Alloc>:: find(const _CharT* __s, size_type __pos, size_type __n) const { *************** namespace std *** 601,607 **** } template ! basic_string<_CharT, _Traits, _Alloc>::size_type basic_string<_CharT, _Traits, _Alloc>:: find(_CharT __c, size_type __pos) const { --- 601,607 ---- } template ! typename basic_string<_CharT, _Traits, _Alloc>::size_type basic_string<_CharT, _Traits, _Alloc>:: find(_CharT __c, size_type __pos) const { *************** namespace std *** 620,626 **** template ! basic_string<_CharT, _Traits, _Alloc>::size_type basic_string<_CharT, _Traits, _Alloc>:: rfind(const _CharT* __s, size_type __pos, size_type __n) const { --- 620,626 ---- template ! typename basic_string<_CharT, _Traits, _Alloc>::size_type basic_string<_CharT, _Traits, _Alloc>:: rfind(const _CharT* __s, size_type __pos, size_type __n) const { *************** namespace std *** 640,646 **** } template ! basic_string<_CharT, _Traits, _Alloc>::size_type basic_string<_CharT, _Traits, _Alloc>:: rfind(_CharT __c, size_type __pos) const { --- 640,646 ---- } template ! typename basic_string<_CharT, _Traits, _Alloc>::size_type basic_string<_CharT, _Traits, _Alloc>:: rfind(_CharT __c, size_type __pos) const { *************** namespace std *** 659,665 **** } template ! basic_string<_CharT, _Traits, _Alloc>::size_type basic_string<_CharT, _Traits, _Alloc>:: find_first_of(const _CharT* __s, size_type __pos, size_type __n) const { --- 659,665 ---- } template ! typename basic_string<_CharT, _Traits, _Alloc>::size_type basic_string<_CharT, _Traits, _Alloc>:: find_first_of(const _CharT* __s, size_type __pos, size_type __n) const { *************** namespace std *** 673,679 **** } template ! basic_string<_CharT, _Traits, _Alloc>::size_type basic_string<_CharT, _Traits, _Alloc>:: find_last_of(const _CharT* __s, size_type __pos, size_type __n) const { --- 673,679 ---- } template ! typename basic_string<_CharT, _Traits, _Alloc>::size_type basic_string<_CharT, _Traits, _Alloc>:: find_last_of(const _CharT* __s, size_type __pos, size_type __n) const { *************** namespace std *** 693,699 **** } template ! basic_string<_CharT, _Traits, _Alloc>::size_type basic_string<_CharT, _Traits, _Alloc>:: find_first_not_of(const _CharT* __s, size_type __pos, size_type __n) const { --- 693,699 ---- } template ! typename basic_string<_CharT, _Traits, _Alloc>::size_type basic_string<_CharT, _Traits, _Alloc>:: find_first_not_of(const _CharT* __s, size_type __pos, size_type __n) const { *************** namespace std *** 705,711 **** } template ! basic_string<_CharT, _Traits, _Alloc>::size_type basic_string<_CharT, _Traits, _Alloc>:: find_first_not_of(_CharT __c, size_type __pos) const { --- 705,711 ---- } template ! typename basic_string<_CharT, _Traits, _Alloc>::size_type basic_string<_CharT, _Traits, _Alloc>:: find_first_not_of(_CharT __c, size_type __pos) const { *************** namespace std *** 717,723 **** } template ! basic_string<_CharT, _Traits, _Alloc>::size_type basic_string<_CharT, _Traits, _Alloc>:: find_last_not_of(const _CharT* __s, size_type __pos, size_type __n) const { --- 717,723 ---- } template ! typename basic_string<_CharT, _Traits, _Alloc>::size_type basic_string<_CharT, _Traits, _Alloc>:: find_last_not_of(const _CharT* __s, size_type __pos, size_type __n) const { *************** namespace std *** 737,743 **** } template ! basic_string<_CharT, _Traits, _Alloc>::size_type basic_string<_CharT, _Traits, _Alloc>:: find_last_not_of(_CharT __c, size_type __pos) const { --- 737,743 ---- } template ! typename basic_string<_CharT, _Traits, _Alloc>::size_type basic_string<_CharT, _Traits, _Alloc>:: find_last_not_of(_CharT __c, size_type __pos) const { diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/c++config gcc-3.0.1/libstdc++-v3/include/bits/c++config *** gcc-3.0/libstdc++-v3/include/bits/c++config Wed Jun 13 11:20:05 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/c++config Sun Aug 19 00:52:57 2001 *************** *** 32,40 **** // Pick up any OS-specific definitions. #include // The current version of the C++ library in compressed ISO date format. ! #define __GLIBCPP__ 20010615 // This is necessary until GCC supports separate template // compilation. --- 32,42 ---- // Pick up any OS-specific definitions. #include + // And any CPU-specific definitions. + #include // The current version of the C++ library in compressed ISO date format. ! #define __GLIBCPP__ 20010819 // This is necessary until GCC supports separate template // compilation. *************** *** 108,112 **** --- 110,118 ---- // Only used in the SGI rope extensions; this is from stl_config.h and // should be cleaned up. # define __stl_assert(expr) + + /** @namespace std + * @brief Everything defined by the ISO C++ Standard is within namespace std. + */ // End of prewritten config; the discovered settings follow. diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/char_traits.h gcc-3.0.1/libstdc++-v3/include/bits/char_traits.h *** gcc-3.0/libstdc++-v3/include/bits/char_traits.h Sun Jun 10 22:06:54 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/char_traits.h Wed Jul 11 12:37:57 2001 *************** *** 41,49 **** namespace std { ! // 21.1.2 Basis for explicit _Traits specialization ! // NB: That for any given actual character type this definition is ! // probably wrong. template struct char_traits { --- 41,49 ---- namespace std { ! /// 21.1.2 Basis for explicit _Traits specialization ! /// NB: That for any given actual character type this definition is ! /// probably wrong. template struct char_traits { *************** namespace std *** 127,133 **** }; ! // 21.1.4 char_traits specializations template<> struct char_traits { --- 127,133 ---- }; ! /// 21.1.4 char_traits specializations template<> struct char_traits { diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/fstream.tcc gcc-3.0.1/libstdc++-v3/include/bits/fstream.tcc *** gcc-3.0/libstdc++-v3/include/bits/fstream.tcc Tue Jun 12 16:10:07 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/fstream.tcc Thu Jul 19 17:14:09 2001 *************** namespace std *** 139,145 **** } template ! basic_filebuf<_CharT, _Traits>::__filebuf_type* basic_filebuf<_CharT, _Traits>:: open(const char* __s, ios_base::openmode __mode) { --- 139,145 ---- } template ! typename basic_filebuf<_CharT, _Traits>::__filebuf_type* basic_filebuf<_CharT, _Traits>:: open(const char* __s, ios_base::openmode __mode) { *************** namespace std *** 166,172 **** } template ! basic_filebuf<_CharT, _Traits>::__filebuf_type* basic_filebuf<_CharT, _Traits>:: close() { --- 166,172 ---- } template ! typename basic_filebuf<_CharT, _Traits>::__filebuf_type* basic_filebuf<_CharT, _Traits>:: close() { *************** namespace std *** 232,238 **** } template ! basic_filebuf<_CharT, _Traits>::int_type basic_filebuf<_CharT, _Traits>:: underflow() { --- 232,238 ---- } template ! typename basic_filebuf<_CharT, _Traits>::int_type basic_filebuf<_CharT, _Traits>:: underflow() { *************** namespace std *** 303,309 **** } template ! basic_filebuf<_CharT, _Traits>::int_type basic_filebuf<_CharT, _Traits>:: pbackfail(int_type __i) { --- 303,309 ---- } template ! typename basic_filebuf<_CharT, _Traits>::int_type basic_filebuf<_CharT, _Traits>:: pbackfail(int_type __i) { *************** namespace std *** 371,377 **** } template ! basic_filebuf<_CharT, _Traits>::int_type basic_filebuf<_CharT, _Traits>:: overflow(int_type __c) { --- 371,377 ---- } template ! typename basic_filebuf<_CharT, _Traits>::int_type basic_filebuf<_CharT, _Traits>:: overflow(int_type __c) { *************** namespace std *** 396,402 **** } template ! basic_filebuf<_CharT, _Traits>::int_type basic_filebuf<_CharT, _Traits>:: _M_really_overflow(int_type __c) { --- 396,402 ---- } template ! typename basic_filebuf<_CharT, _Traits>::int_type basic_filebuf<_CharT, _Traits>:: _M_really_overflow(int_type __c) { *************** namespace std *** 475,481 **** } template ! basic_filebuf<_CharT, _Traits>::__streambuf_type* basic_filebuf<_CharT, _Traits>:: setbuf(char_type* __s, streamsize __n) { --- 475,481 ---- } template ! typename basic_filebuf<_CharT, _Traits>::__streambuf_type* basic_filebuf<_CharT, _Traits>:: setbuf(char_type* __s, streamsize __n) { *************** namespace std *** 503,509 **** } template ! basic_filebuf<_CharT, _Traits>::pos_type basic_filebuf<_CharT, _Traits>:: seekoff(off_type __off, ios_base::seekdir __way, ios_base::openmode __mode) { --- 503,509 ---- } template ! typename basic_filebuf<_CharT, _Traits>::pos_type basic_filebuf<_CharT, _Traits>:: seekoff(off_type __off, ios_base::seekdir __way, ios_base::openmode __mode) { *************** namespace std *** 559,565 **** } template ! basic_filebuf<_CharT, _Traits>::pos_type basic_filebuf<_CharT, _Traits>:: seekpos(pos_type __pos, ios_base::openmode __mode) { --- 559,565 ---- } template ! typename basic_filebuf<_CharT, _Traits>::pos_type basic_filebuf<_CharT, _Traits>:: seekpos(pos_type __pos, ios_base::openmode __mode) { diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/istream.tcc gcc-3.0.1/libstdc++-v3/include/bits/istream.tcc *** gcc-3.0/libstdc++-v3/include/bits/istream.tcc Tue Jun 12 16:07:39 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/istream.tcc Thu Jul 19 17:14:09 2001 *************** namespace std *** 465,471 **** } template ! basic_istream<_CharT, _Traits>::int_type basic_istream<_CharT, _Traits>:: get(void) { --- 465,471 ---- } template ! typename basic_istream<_CharT, _Traits>::int_type basic_istream<_CharT, _Traits>:: get(void) { *************** namespace std *** 720,726 **** } template ! basic_istream<_CharT, _Traits>::int_type basic_istream<_CharT, _Traits>:: peek(void) { --- 720,726 ---- } template ! typename basic_istream<_CharT, _Traits>::int_type basic_istream<_CharT, _Traits>:: peek(void) { diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/limits_generic.h gcc-3.0.1/libstdc++-v3/include/bits/limits_generic.h *** gcc-3.0/libstdc++-v3/include/bits/limits_generic.h Tue Jun 12 16:07:40 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/limits_generic.h Wed Jul 25 13:48:26 2001 *************** *** 35,40 **** --- 35,45 ---- // 18.2.1 // + /** @file limits_generic.h + * ISO 14882:1998 + * 18.2.1 + */ + #ifndef _CPP_NUMERIC_LIMITS #define _CPP_NUMERIC_LIMITS 1 *************** *** 49,54 **** --- 54,60 ---- namespace std { + /// Rounding style determines the behavior of floating-point calculations. enum float_round_style { round_indeterminate = -1, round_toward_zero = 0, *************** namespace std { *** 57,68 **** --- 63,82 ---- round_toward_neg_infinity = 3 }; + /// This enum signals whether a type has denormalization. enum float_denorm_style { denorm_indeterminate = -1, denorm_absent = 0, denorm_present = 1 }; + /** + * [18.2.1]/1: "The numeric_limits component provides a C++ program + * with information about various properties of the implementation's + * representation of the fundamental types." All of the standard + * fundamental types have specializations of this class template. + * @brief Properties of fundamental types on a per-platform basis. + */ template struct numeric_limits { static const bool is_specialized = false; *************** namespace std { *** 455,462 **** --- 469,481 ---- static int max() throw() { return INT_MAX; } + #if INT_MAX > 32767 static const int digits = 31; static const int digits10 = 9; + #else + static const int digits = 15; + static const int digits10 = 4; + #endif static const bool is_signed = true; static const bool is_integer = true; static const bool is_exact = true; *************** namespace std { *** 503,510 **** --- 522,534 ---- static unsigned int max() throw() { return UINT_MAX; } + #if INT_MAX > 32767 static const int digits = 32; static const int digits10 = 9; + #else + static const int digits = 16; + static const int digits10 = 4; + #endif static const bool is_signed = false; static const bool is_integer = true; static const bool is_exact = true; *************** namespace std { *** 551,558 **** --- 575,590 ---- static long max() throw() { return LONG_MAX; } + #if LONG_MAX > 2147483647 + static const int digits = 63; + static const int digits10 = 18; + #elif LONG_MAX > 32767 static const int digits = 31; static const int digits10 = 9; + #else + static const int digits = 15; + static const int digits10 = 4; + #endif static const bool is_signed = true; static const bool is_integer = true; static const bool is_exact = true; *************** namespace std { *** 599,606 **** --- 631,646 ---- static unsigned long max() throw() { return ULONG_MAX; } + #if LONG_MAX > 2147483647 + static const int digits = 64; + static const int digits10 = 19; + #elif LONG_MAX > 32767 static const int digits = 32; static const int digits10 = 9; + #else + static const int digits = 16; + static const int digits10 = 4; + #endif static const bool is_signed = false; static const bool is_integer = true; static const bool is_exact = true; diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/pthread_allocimpl.h gcc-3.0.1/libstdc++-v3/include/bits/pthread_allocimpl.h *** gcc-3.0/libstdc++-v3/include/bits/pthread_allocimpl.h Mon May 14 12:49:03 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/pthread_allocimpl.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // POSIX thread-related memory allocation -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * Copyright (c) 1996 * Silicon Graphics Computer Systems, Inc. diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/sstream.tcc gcc-3.0.1/libstdc++-v3/include/bits/sstream.tcc *** gcc-3.0/libstdc++-v3/include/bits/sstream.tcc Mon May 14 12:49:03 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/sstream.tcc Thu Jul 19 17:14:09 2001 *************** namespace std *** 40,46 **** { template ! basic_stringbuf<_CharT, _Traits, _Alloc>::int_type basic_stringbuf<_CharT, _Traits, _Alloc>:: pbackfail(int_type __c) { --- 40,46 ---- { template ! typename basic_stringbuf<_CharT, _Traits, _Alloc>::int_type basic_stringbuf<_CharT, _Traits, _Alloc>:: pbackfail(int_type __c) { *************** namespace std *** 74,80 **** } template ! basic_stringbuf<_CharT, _Traits, _Alloc>::int_type basic_stringbuf<_CharT, _Traits, _Alloc>:: overflow(int_type __c) { --- 74,80 ---- } template ! typename basic_stringbuf<_CharT, _Traits, _Alloc>::int_type basic_stringbuf<_CharT, _Traits, _Alloc>:: overflow(int_type __c) { *************** namespace std *** 114,120 **** } template ! basic_stringbuf<_CharT, _Traits, _Alloc>::pos_type basic_stringbuf<_CharT, _Traits, _Alloc>:: seekoff(off_type __off, ios_base::seekdir __way, ios_base::openmode __mode) { --- 114,120 ---- } template ! typename basic_stringbuf<_CharT, _Traits, _Alloc>::pos_type basic_stringbuf<_CharT, _Traits, _Alloc>:: seekoff(off_type __off, ios_base::seekdir __way, ios_base::openmode __mode) { *************** namespace std *** 172,178 **** } template ! basic_stringbuf<_CharT, _Traits, _Alloc>::pos_type basic_stringbuf<_CharT, _Traits, _Alloc>:: seekpos(pos_type __sp, ios_base::openmode __mode) { --- 172,178 ---- } template ! typename basic_stringbuf<_CharT, _Traits, _Alloc>::pos_type basic_stringbuf<_CharT, _Traits, _Alloc>:: seekpos(pos_type __sp, ios_base::openmode __mode) { diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/std_algorithm.h gcc-3.0.1/libstdc++-v3/include/bits/std_algorithm.h *** gcc-3.0/libstdc++-v3/include/bits/std_algorithm.h Mon Feb 19 10:57:40 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/std_algorithm.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/std_bitset.h gcc-3.0.1/libstdc++-v3/include/bits/std_bitset.h *** gcc-3.0/libstdc++-v3/include/bits/std_bitset.h Tue Jun 12 16:07:40 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/std_bitset.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * Copyright (c) 1998 * Silicon Graphics Computer Systems, Inc. diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/std_complex.h gcc-3.0.1/libstdc++-v3/include/bits/std_complex.h *** gcc-3.0/libstdc++-v3/include/bits/std_complex.h Thu May 31 05:41:46 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/std_complex.h Fri Aug 10 08:32:43 2001 *************** namespace std *** 930,943 **** inline complex& complex::operator*=(long double __r) { ! __real__ _M_value *= __r; return *this; } inline complex& complex::operator/=(long double __r) { ! __real__ _M_value /= __r; return *this; } --- 930,943 ---- inline complex& complex::operator*=(long double __r) { ! _M_value *= __r; return *this; } inline complex& complex::operator/=(long double __r) { ! _M_value /= __r; return *this; } diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/std_deque.h gcc-3.0.1/libstdc++-v3/include/bits/std_deque.h *** gcc-3.0/libstdc++-v3/include/bits/std_deque.h Mon Feb 19 10:57:40 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/std_deque.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/std_functional.h gcc-3.0.1/libstdc++-v3/include/bits/std_functional.h *** gcc-3.0/libstdc++-v3/include/bits/std_functional.h Mon May 14 12:49:04 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/std_functional.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * Copyright (c) 1997 * Silicon Graphics Computer Systems, Inc. diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/std_istream.h gcc-3.0.1/libstdc++-v3/include/bits/std_istream.h *** gcc-3.0/libstdc++-v3/include/bits/std_istream.h Thu May 31 13:34:34 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/std_istream.h Thu Jul 19 17:14:09 2001 *************** namespace std *** 217,223 **** typedef _Traits traits_type; typedef basic_streambuf<_CharT, _Traits> __streambuf_type; typedef basic_istream<_CharT, _Traits> __istream_type; ! typedef __istream_type::__ctype_type __ctype_type; typedef typename _Traits::int_type __int_type; explicit --- 217,223 ---- typedef _Traits traits_type; typedef basic_streambuf<_CharT, _Traits> __streambuf_type; typedef basic_istream<_CharT, _Traits> __istream_type; ! typedef typename __istream_type::__ctype_type __ctype_type; typedef typename _Traits::int_type __int_type; explicit diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/std_iterator.h gcc-3.0.1/libstdc++-v3/include/bits/std_iterator.h *** gcc-3.0/libstdc++-v3/include/bits/std_iterator.h Mon May 14 12:49:04 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/std_iterator.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/std_limits.h gcc-3.0.1/libstdc++-v3/include/bits/std_limits.h *** gcc-3.0/libstdc++-v3/include/bits/std_limits.h Wed Dec 31 16:00:00 1969 --- gcc-3.0.1/libstdc++-v3/include/bits/std_limits.h Wed Aug 15 08:48:36 2001 *************** *** 0 **** --- 1,1995 ---- + // The template and inlines for the -*- C++ -*- numeric_limits classes. + + // Copyright (C) 1999-2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + + // Note: this is not a conforming implementation. + // Written by Gabriel Dos Reis + + // + // ISO 14882:1998 + // 18.2.1 + // + + #ifndef _CPP_NUMERIC_LIMITS + #define _CPP_NUMERIC_LIMITS 1 + + #pragma GCC system_header + + #include + + // + // The numeric_limits<> traits document implementation-defined aspects + // of fundamental arithmetic data types (integers and floating points). + // From Standard C++ point of view, there are 13 such types: + // * integers + // bool (1) + // char, signed char, unsigned char (3) + // short, unsigned short (2) + // int, unsigned (2) + // long, unsigned long (2) + // + // * floating points + // float (1) + // double (1) + // long double (1) + // + // GNU C++ undertstands (where supported by the host C-library) + // * integer + // long long, unsigned long long (2) + // + // which brings us to 15 fundamental arithmetic data types in GNU C++. + // + // + // Since a numeric_limits<> is a bit tricky to get right, we rely on + // an interface composed of macros which should be defined in config/os + // or config/cpu when they differ from the generic (read arbitrary) + // definitions given here. + // + + // These values can be overridden in the target configuration file. + // The default values are appropriate for many 32-bit targets. + + #ifndef __glibcpp_char_bits + #define __glibcpp_char_bits 8 + #endif + #ifdef __CHAR_UNSIGNED__ + #define __glibcpp_plain_char_is_signed false + #else + #define __glibcpp_plain_char_is_signed true + #endif + #ifndef __glibcpp_short_bits + #define __glibcpp_short_bits 16 + #endif + #ifndef __glibcpp_int_bits + #define __glibcpp_int_bits 32 + #endif + #ifndef __glibcpp_long_bits + #define __glibcpp_long_bits 32 + #endif + #ifndef __glibcpp_wchar_t_bits + #define __glibcpp_wchar_t_bits 32 + #endif + #ifndef __glibcpp_wchar_t_is_signed + #define __glibcpp_wchar_t_is_signed __glibcpp_plain_char_is_signed + #endif + #ifdef _GLIBCPP_USE_LONG_LONG + #ifndef __glibcpp_long_long_bits + #define __glibcpp_long_long_bits 64 + #endif + #endif + #ifndef __glibcpp_float_bits + #define __glibcpp_float_bits 32 + #endif + #ifndef __glibcpp_double_bits + #define __glibcpp_double_bits 64 + #endif + #ifndef __glibcpp_long_double_bits + #define __glibcpp_long_double_bits 128 + #endif + + #ifndef __glibcpp_char_traps + #define __glibcpp_char_traps true + #endif + #ifndef __glibcpp_short_traps + #define __glibcpp_short_traps true + #endif + #ifndef __glibcpp_int_traps + #define __glibcpp_int_traps true + #endif + #ifndef __glibcpp_long_traps + #define __glibcpp_long_traps true + #endif + #ifndef __glibcpp_wchar_t_traps + #define __glibcpp_wchar_t_traps true + #endif + #ifdef _GLIBCPP_USE_LONG_LONG + #ifndef __glibcpp_long_long_traps + #define __glibcpp_long_long_traps true + #endif + #endif + + // You should not need to define any macros below this point, unless + // you have a machine with non-standard bit-widths. + + // These values are the minimums and maximums for standard data types + // of common widths. + + #define __glibcpp_s8_max 127 + #define __glibcpp_s8_min (-__glibcpp_s8_max - 1) + #define __glibcpp_s8_digits 7 + #define __glibcpp_s8_digits10 3 + #define __glibcpp_u8_min 0U + #define __glibcpp_u8_max (__glibcpp_s8_max * 2 + 1) + #define __glibcpp_u8_digits 8 + #define __glibcpp_u8_digits10 3 + #define __glibcpp_s16_max 32767 + #define __glibcpp_s16_min (-__glibcpp_s16_max - 1) + #define __glibcpp_s16_digits 15 + #define __glibcpp_s16_digits10 5 + #define __glibcpp_u16_min 0U + #define __glibcpp_u16_max (__glibcpp_s16_max * 2 + 1) + #define __glibcpp_u16_digits 16 + #define __glibcpp_u16_digits10 5 + #define __glibcpp_s32_max 2147483647L + #define __glibcpp_s32_min (-__glibcpp_s32_max - 1) + #define __glibcpp_s32_digits 31 + #define __glibcpp_s32_digits10 10 + #define __glibcpp_u32_min 0UL + #define __glibcpp_u32_max (__glibcpp_s32_max * 2U + 1) + #define __glibcpp_u32_digits 32 + #define __glibcpp_u32_digits10 10 + #define __glibcpp_s64_max 9223372036854775807LL + #define __glibcpp_s64_min (-__glibcpp_s64_max - 1) + #define __glibcpp_s64_digits 63 + #define __glibcpp_s64_digits10 19 + #define __glibcpp_u64_min 0ULL + #define __glibcpp_u64_max (__glibcpp_s64_max * 2ULL + 1) + #define __glibcpp_u64_digits 64 + #define __glibcpp_u64_digits10 19 + + #define __glibcpp_f32_min 1.17549435e-38F + #define __glibcpp_f32_max 3.40282347e+38F + #define __glibcpp_f32_digits 24 + #define __glibcpp_f32_digits10 6 + #define __glibcpp_f32_radix 2 + #define __glibcpp_f32_epsilon 1.19209290e-07F + #define __glibcpp_f32_round_error 1.0F + #define __glibcpp_f32_min_exponent -125 + #define __glibcpp_f32_min_exponent10 -37 + #define __glibcpp_f32_max_exponent 128 + #define __glibcpp_f32_max_exponent10 38 + #define __glibcpp_f64_min 2.2250738585072014e-308 + #define __glibcpp_f64_max 1.7976931348623157e+308 + #define __glibcpp_f64_digits 53 + #define __glibcpp_f64_digits10 15 + #define __glibcpp_f64_radix 2 + #define __glibcpp_f64_epsilon 2.2204460492503131e-16 + #define __glibcpp_f64_round_error 1.0 + #define __glibcpp_f64_min_exponent -1021 + #define __glibcpp_f64_min_exponent10 -307 + #define __glibcpp_f64_max_exponent 1024 + #define __glibcpp_f64_max_exponent10 308 + #define __glibcpp_f80_min 3.36210314311209350626e-4932L + #define __glibcpp_f80_max 1.18973149535723176502e+4932L + #define __glibcpp_f80_digits 64 + #define __glibcpp_f80_digits10 18 + #define __glibcpp_f80_radix 2 + #define __glibcpp_f80_epsilon 1.08420217248550443401e-19L + #define __glibcpp_f80_round_error 1.0L + #define __glibcpp_f80_min_exponent -16381 + #define __glibcpp_f80_min_exponent10 -4931 + #define __glibcpp_f80_max_exponent 16384 + #define __glibcpp_f80_max_exponent10 4932 + #define __glibcpp_f96_min 1.68105157155604675313e-4932L + #define __glibcpp_f96_max 1.18973149535723176502e+4932L + #define __glibcpp_f96_digits 64 + #define __glibcpp_f96_digits10 18 + #define __glibcpp_f96_radix 2 + #define __glibcpp_f96_epsilon 1.08420217248550443401e-19L + #define __glibcpp_f96_round_error 1.0L + #define __glibcpp_f96_min_exponent -16382 + #define __glibcpp_f96_min_exponent10 -4931 + #define __glibcpp_f96_max_exponent 16384 + #define __glibcpp_f96_max_exponent10 4932 + #define __glibcpp_f128_min 3.362103143112093506262677817321752603E-4932L + #define __glibcpp_f128_max 1.189731495357231765085759326628007016E+4932L + #define __glibcpp_f128_digits 113 + #define __glibcpp_f128_digits10 33 + #define __glibcpp_f128_radix 2 + #define __glibcpp_f128_epsilon 1.925929944387235853055977942584927319E-34L + #define __glibcpp_f128_round_error 1.0L + #define __glibcpp_f128_min_exponent -16381 + #define __glibcpp_f128_min_exponent10 -4931 + #define __glibcpp_f128_max_exponent 16384 + #define __glibcpp_f128_max_exponent10 4932 + + // bool-specific hooks: + // __glibcpp_bool_digits __glibcpp_int_traps __glibcpp_long_traps + + // This is actually CHAR_BITS because the new ABI says a bool + // is one (1) byte wide. + + #ifndef __glibcpp_bool_digits + #define __glibcpp_bool_digits __glibcpp_char_bits + #endif + + // char. + + #define __glibcpp_plain_char_traps true + #define __glibcpp_signed_char_traps true + #define __glibcpp_unsigned_char_traps true + #if __glibcpp_char_bits == 8 + #define __glibcpp_signed_char_min __glibcpp_s8_min + #define __glibcpp_signed_char_max __glibcpp_s8_max + #define __glibcpp_signed_char_digits __glibcpp_s8_digits + #define __glibcpp_signed_char_digits10 __glibcpp_s8_digits10 + #define __glibcpp_unsigned_char_min __glibcpp_u8_min + #define __glibcpp_unsigned_char_max __glibcpp_u8_max + #define __glibcpp_unsigned_char_digits __glibcpp_u8_digits + #define __glibcpp_unsigned_char_digits10 __glibcpp_u8_digits10 + #elif __glibcpp_char_bits == 16 + #define __glibcpp_signed_char_min __glibcpp_s16_min + #define __glibcpp_signed_char_max __glibcpp_s16_max + #define __glibcpp_signed_char_digits __glibcpp_s16_digits + #define __glibcpp_signed_char_digits10 __glibcpp_s16_digits10 + #define __glibcpp_unsigned_char_min __glibcpp_u16_min + #define __glibcpp_unsigned_char_max __glibcpp_u16_max + #define __glibcpp_unsigned_char_digits __glibcpp_u16_digits + #define __glibcpp_unsigned_char_digits10 __glibcpp_u16_digits10 + #elif __glibcpp_char_bits == 32 + #define __glibcpp_signed_char_min (signed char)__glibcpp_s32_min + #define __glibcpp_signed_char_max (signed char)__glibcpp_s32_max + #define __glibcpp_signed_char_digits __glibcpp_s32_digits + #define __glibcpp_signed_char_digits10 __glibcpp_s32_digits10 + #define __glibcpp_unsigned_char_min (unsigned char)__glibcpp_u32_min + #define __glibcpp_unsigned_char_max (unsigned char)__glibcpp_u32_max + #define __glibcpp_unsigned_char_digits __glibcpp_u32_digits + #define __glibcpp_unsigned_char_digits10 __glibcpp_u32_digits10 + #elif __glibcpp_char_bits == 64 + #define __glibcpp_signed_char_min (signed char)__glibcpp_s64_min + #define __glibcpp_signed_char_max (signed char)__glibcpp_s64_max + #define __glibcpp_signed_char_digits __glibcpp_s64_digits + #define __glibcpp_signed_char_digits10 __glibcpp_s64_digits10 + #define __glibcpp_unsigned_char_min (unsigned char)__glibcpp_u64_min + #define __glibcpp_unsigned_char_max (unsigned char)__glibcpp_u64_max + #define __glibcpp_unsigned_char_digits __glibcpp_u64_digits + #define __glibcpp_unsigned_char_digits10 __glibcpp_u64_digits10 + #else + // You must define these macros in the configuration file. + #endif + + #if __glibcpp_plain_char_is_signed + #define __glibcpp_char_min (char)__glibcpp_signed_char_min + #define __glibcpp_char_max (char)__glibcpp_signed_char_max + #define __glibcpp_char_digits __glibcpp_signed_char_digits + #define __glibcpp_char_digits10 __glibcpp_signed_char_digits + #else + #define __glibcpp_char_min (char)__glibcpp_unsigned_char_min + #define __glibcpp_char_max (char)__glibcpp_unsigned_char_max + #define __glibcpp_char_digits __glibcpp_unsigned_char_digits + #define __glibcpp_char_digits10 __glibcpp_unsigned_char_digits + #endif + + // short + + #define __glibcpp_signed_short_traps true + #define __glibcpp_unsigned_short_traps true + #if __glibcpp_short_bits == 8 + #define __glibcpp_signed_short_min __glibcpp_s8_min + #define __glibcpp_signed_short_max __glibcpp_s8_max + #define __glibcpp_signed_short_digits __glibcpp_s8_digits + #define __glibcpp_signed_short_digits10 __glibcpp_s8_digits10 + #define __glibcpp_unsigned_short_min __glibcpp_u8_min + #define __glibcpp_unsigned_short_max __glibcpp_u8_max + #define __glibcpp_unsigned_short_digits __glibcpp_u8_digits + #define __glibcpp_unsigned_short_digits10 __glibcpp_u8_digits10 + #elif __glibcpp_short_bits == 16 + #define __glibcpp_signed_short_min __glibcpp_s16_min + #define __glibcpp_signed_short_max __glibcpp_s16_max + #define __glibcpp_signed_short_digits __glibcpp_s16_digits + #define __glibcpp_signed_short_digits10 __glibcpp_s16_digits10 + #define __glibcpp_unsigned_short_min __glibcpp_u16_min + #define __glibcpp_unsigned_short_max __glibcpp_u16_max + #define __glibcpp_unsigned_short_digits __glibcpp_u16_digits + #define __glibcpp_unsigned_short_digits10 __glibcpp_u16_digits10 + #elif __glibcpp_short_bits == 32 + #define __glibcpp_signed_short_min (short)__glibcpp_s32_min + #define __glibcpp_signed_short_max (short)__glibcpp_s32_max + #define __glibcpp_signed_short_digits __glibcpp_s32_digits + #define __glibcpp_signed_short_digits10 __glibcpp_s32_digits10 + #define __glibcpp_unsigned_short_min (unsigned short)__glibcpp_u32_min + #define __glibcpp_unsigned_short_max (unsigned short)__glibcpp_u32_max + #define __glibcpp_unsigned_short_digits __glibcpp_u32_digits + #define __glibcpp_unsigned_short_digits10 __glibcpp_u32_digits10 + #elif __glibcpp_short_bits == 64 + #define __glibcpp_signed_short_min (short)__glibcpp_s64_min + #define __glibcpp_signed_short_max (short)__glibcpp_s64_max + #define __glibcpp_signed_short_digits __glibcpp_s64_digits + #define __glibcpp_signed_short_digits10 __glibcpp_s64_digits10 + #define __glibcpp_unsigned_short_min (unsigned short)__glibcpp_u64_min + #define __glibcpp_unsigned_short_max (unsigned short)__glibcpp_u64_max + #define __glibcpp_unsigned_short_digits __glibcpp_u64_digits + #define __glibcpp_unsigned_short_digits10 __glibcpp_u64_digits10 + #else + // You must define these macros in the configuration file. + #endif + + // int + + #define __glibcpp_signed_int_traps true + #define __glibcpp_unsigned_int_traps true + #if __glibcpp_int_bits == 8 + #define __glibcpp_signed_int_min __glibcpp_s8_min + #define __glibcpp_signed_int_max __glibcpp_s8_max + #define __glibcpp_signed_int_digits __glibcpp_s8_digits + #define __glibcpp_signed_int_digits10 __glibcpp_s8_digits10 + #define __glibcpp_unsigned_int_min __glibcpp_u8_min + #define __glibcpp_unsigned_int_max __glibcpp_u8_max + #define __glibcpp_unsigned_int_digits __glibcpp_u8_digits + #define __glibcpp_unsigned_int_digits10 __glibcpp_u8_digits10 + #elif __glibcpp_int_bits == 16 + #define __glibcpp_signed_int_min __glibcpp_s16_min + #define __glibcpp_signed_int_max __glibcpp_s16_max + #define __glibcpp_signed_int_digits __glibcpp_s16_digits + #define __glibcpp_signed_int_digits10 __glibcpp_s16_digits10 + #define __glibcpp_unsigned_int_min __glibcpp_u16_min + #define __glibcpp_unsigned_int_max __glibcpp_u16_max + #define __glibcpp_unsigned_int_digits __glibcpp_u16_digits + #define __glibcpp_unsigned_int_digits10 __glibcpp_u16_digits10 + #elif __glibcpp_int_bits == 32 + #define __glibcpp_signed_int_min (int)__glibcpp_s32_min + #define __glibcpp_signed_int_max (int)__glibcpp_s32_max + #define __glibcpp_signed_int_digits __glibcpp_s32_digits + #define __glibcpp_signed_int_digits10 __glibcpp_s32_digits10 + #define __glibcpp_unsigned_int_min (unsigned)__glibcpp_u32_min + #define __glibcpp_unsigned_int_max (unsigned)__glibcpp_u32_max + #define __glibcpp_unsigned_int_digits __glibcpp_u32_digits + #define __glibcpp_unsigned_int_digits10 __glibcpp_u32_digits10 + #elif __glibcpp_int_bits == 64 + #define __glibcpp_signed_int_min (int)__glibcpp_s64_min + #define __glibcpp_signed_int_max (int)__glibcpp_s64_max + #define __glibcpp_signed_int_digits __glibcpp_s64_digits + #define __glibcpp_signed_int_digits10 __glibcpp_s64_digits10 + #define __glibcpp_unsigned_int_min (unsigned)__glibcpp_u64_min + #define __glibcpp_unsigned_int_max (unsigned)__glibcpp_u64_max + #define __glibcpp_unsigned_int_digits __glibcpp_u64_digits + #define __glibcpp_unsigned_int_digits10 __glibcpp_u64_digits10 + #else + // You must define these macros in the configuration file. + #endif + + // long + + #define __glibcpp_signed_long_traps true + #define __glibcpp_unsigned_long_traps true + #if __glibcpp_long_bits == 8 + #define __glibcpp_signed_long_min __glibcpp_s8_min + #define __glibcpp_signed_long_max __glibcpp_s8_max + #define __glibcpp_signed_long_digits __glibcpp_s8_digits + #define __glibcpp_signed_long_digits10 __glibcpp_s8_digits10 + #define __glibcpp_unsigned_long_min __glibcpp_u8_min + #define __glibcpp_unsigned_long_max __glibcpp_u8_max + #define __glibcpp_unsigned_long_digits __glibcpp_u8_digits + #define __glibcpp_unsigned_long_digits10 __glibcpp_u8_digits10 + #elif __glibcpp_long_bits == 16 + #define __glibcpp_signed_long_min __glibcpp_s16_min + #define __glibcpp_signed_long_max __glibcpp_s16_max + #define __glibcpp_signed_long_digits __glibcpp_s16_digits + #define __glibcpp_signed_long_digits10 __glibcpp_s16_digits10 + #define __glibcpp_unsigned_long_min __glibcpp_u16_min + #define __glibcpp_unsigned_long_max __glibcpp_u16_max + #define __glibcpp_unsigned_long_digits __glibcpp_u16_digits + #define __glibcpp_unsigned_long_digits10 __glibcpp_u16_digits10 + #elif __glibcpp_long_bits == 32 + #define __glibcpp_signed_long_min __glibcpp_s32_min + #define __glibcpp_signed_long_max __glibcpp_s32_max + #define __glibcpp_signed_long_digits __glibcpp_s32_digits + #define __glibcpp_signed_long_digits10 __glibcpp_s32_digits10 + #define __glibcpp_unsigned_long_min __glibcpp_u32_min + #define __glibcpp_unsigned_long_max __glibcpp_u32_max + #define __glibcpp_unsigned_long_digits __glibcpp_u32_digits + #define __glibcpp_unsigned_long_digits10 __glibcpp_u32_digits10 + #elif __glibcpp_long_bits == 64 + #define __glibcpp_signed_long_min (long)__glibcpp_s64_min + #define __glibcpp_signed_long_max (long)__glibcpp_s64_max + #define __glibcpp_signed_long_digits __glibcpp_s64_digits + #define __glibcpp_signed_long_digits10 __glibcpp_s64_digits10 + #define __glibcpp_unsigned_long_min (unsigned long)__glibcpp_u64_min + #define __glibcpp_unsigned_long_max (unsigned long)__glibcpp_u64_max + #define __glibcpp_unsigned_long_digits __glibcpp_u64_digits + #define __glibcpp_unsigned_long_digits10 __glibcpp_u64_digits10 + #else + // You must define these macros in the configuration file. + #endif + + #ifdef _GLIBCPP_USE_LONG_LONG + + // long long + + #define __glibcpp_signed_long_long_traps true + #define __glibcpp_signed_long_long_traps true + #if __glibcpp_long_long_bits == 8 + #define __glibcpp_signed_long_long_min __glibcpp_s8_min + #define __glibcpp_signed_long_long_max __glibcpp_s8_max + #define __glibcpp_signed_long_long_digits __glibcpp_s8_digits + #define __glibcpp_signed_long_long_digits10 __glibcpp_s8_digits10 + #define __glibcpp_unsigned_long_long_min __glibcpp_u8_min + #define __glibcpp_unsigned_long_long_max __glibcpp_u8_max + #define __glibcpp_unsigned_long_long_digits __glibcpp_u8_digits + #define __glibcpp_unsigned_long_long_digits10 __glibcpp_u8_digits10 + #elif __glibcpp_long_long_bits == 16 + #define __glibcpp_signed_long_long_min __glibcpp_s16_min + #define __glibcpp_signed_long_long_max __glibcpp_s16_max + #define __glibcpp_signed_long_long_digits __glibcpp_s16_digits + #define __glibcpp_signed_long_long_digits10 __glibcpp_s16_digits10 + #define __glibcpp_unsigned_long_long_min __glibcpp_u16_min + #define __glibcpp_unsigned_long_long_max __glibcpp_u16_max + #define __glibcpp_unsigned_long_long_digits __glibcpp_u16_digits + #define __glibcpp_unsigned_long_long_digits10 __glibcpp_u16_digits10 + #elif __glibcpp_long_long_bits == 32 + #define __glibcpp_signed_long_long_min __glibcpp_s32_min + #define __glibcpp_signed_long_long_max __glibcpp_s32_max + #define __glibcpp_signed_long_long_digits __glibcpp_s32_digits + #define __glibcpp_signed_long_long_digits10 __glibcpp_s32_digits10 + #define __glibcpp_unsigned_long_long_min __glibcpp_u32_min + #define __glibcpp_unsigned_long_long_max __glibcpp_u32_max + #define __glibcpp_unsigned_long_long_digits __glibcpp_u32_digits + #define __glibcpp_unsigned_long_long_digits10 __glibcpp_u32_digits10 + #elif __glibcpp_long_long_bits == 64 + #define __glibcpp_signed_long_long_min __glibcpp_s64_min + #define __glibcpp_signed_long_long_max __glibcpp_s64_max + #define __glibcpp_signed_long_long_digits __glibcpp_s64_digits + #define __glibcpp_signed_long_long_digits10 __glibcpp_s64_digits10 + #define __glibcpp_signed_long_long_traps true + #define __glibcpp_unsigned_long_long_min __glibcpp_u64_min + #define __glibcpp_unsigned_long_long_max __glibcpp_u64_max + #define __glibcpp_unsigned_long_long_digits __glibcpp_u64_digits + #define __glibcpp_unsigned_long_long_digits10 __glibcpp_u64_digits10 + #define __glibcpp_unsigned_long_long_traps true + #else + // You must define these macros in the configuration file. + #endif + + #endif + + // wchar_t + + #define __glibcpp_wchar_t_traps true + #if __glibcpp_wchar_t_is_signed + #if __glibcpp_wchar_t_bits == 8 + #define __glibcpp_wchar_t_min __glibcpp_s8_min + #define __glibcpp_wchar_t_max __glibcpp_s8_max + #define __glibcpp_wchar_t_digits __glibcpp_s8_digits + #define __glibcpp_wchar_t_digits10 __glibcpp_s8_digits10 + #elif __glibcpp_wchar_t_bits == 16 + #define __glibcpp_wchar_t_min __glibcpp_s16_min + #define __glibcpp_wchar_t_max __glibcpp_s16_max + #define __glibcpp_wchar_t_digits __glibcpp_s16_digits + #define __glibcpp_wchar_t_digits10 __glibcpp_s16_digits10 + #elif __glibcpp_wchar_t_bits == 32 + #define __glibcpp_wchar_t_min (wchar_t)__glibcpp_s32_min + #define __glibcpp_wchar_t_max (wchar_t)__glibcpp_s32_max + #define __glibcpp_wchar_t_digits __glibcpp_s32_digits + #define __glibcpp_wchar_t_digits10 __glibcpp_s32_digits10 + #elif __glibcpp_wchar_t_bits == 64 + #define __glibcpp_wchar_t_min (wchar_t)__glibcpp_s64_min + #define __glibcpp_wchar_t_max (wchar_t)__glibcpp_s64_max + #define __glibcpp_wchar_t_digits __glibcpp_s64_digits + #define __glibcpp_wchar_t_digits10 __glibcpp_s64_digits10 + #else + // You must define these macros in the configuration file. + #endif + #else + #if __glibcpp_wchar_t_bits == 8 + #define __glibcpp_wchar_t_min __glibcpp_u8_min + #define __glibcpp_wchar_t_max __glibcpp_u8_max + #define __glibcpp_wchar_t_digits __glibcpp_u8_digits + #define __glibcpp_wchar_t_digits10 __glibcpp_u8_digits10 + #elif __glibcpp_wchar_t_bits == 16 + #define __glibcpp_wchar_t_min __glibcpp_u16_min + #define __glibcpp_wchar_t_max __glibcpp_u16_max + #define __glibcpp_wchar_t_digits __glibcpp_u16_digits + #define __glibcpp_wchar_t_digits10 __glibcpp_u16_digits10 + #elif __glibcpp_wchar_t_bits == 32 + #define __glibcpp_wchar_t_min (wchar_t)__glibcpp_u32_min + #define __glibcpp_wchar_t_max (wchar_t)__glibcpp_u32_max + #define __glibcpp_wchar_t_digits __glibcpp_u32_digits + #define __glibcpp_wchar_t_digits10 __glibcpp_u32_digits10 + #elif __glibcpp_wchar_t_bits == 64 + #define __glibcpp_wchar_t_min (wchar_t)__glibcpp_u64_min + #define __glibcpp_wchar_t_max (wchar_t)__glibcpp_u64_max + #define __glibcpp_wchar_t_digits __glibcpp_u64_digits + #define __glibcpp_wchar_t_digits10 __glibcpp_u64_digits10 + #else + // You must define these macros in the configuration file. + #endif + #endif + + // float + // + + #if __glibcpp_float_bits == 32 + #define __glibcpp_float_min __glibcpp_f32_min + #define __glibcpp_float_max __glibcpp_f32_max + #define __glibcpp_float_digits __glibcpp_f32_digits + #define __glibcpp_float_digits10 __glibcpp_f32_digits10 + #define __glibcpp_float_radix __glibcpp_f32_radix + #define __glibcpp_float_epsilon __glibcpp_f32_epsilon + #define __glibcpp_float_round_error __glibcpp_f32_round_error + #define __glibcpp_float_min_exponent __glibcpp_f32_min_exponent + #define __glibcpp_float_min_exponent10 __glibcpp_f32_min_exponent10 + #define __glibcpp_float_max_exponent __glibcpp_f32_max_exponent + #define __glibcpp_float_max_exponent10 __glibcpp_f32_max_exponent10 + #elif __glibcpp_float_bits == 64 + #define __glibcpp_float_min __glibcpp_f64_min + #define __glibcpp_float_max __glibcpp_f64_max + #define __glibcpp_float_digits __glibcpp_f64_digits + #define __glibcpp_float_digits10 __glibcpp_f64_digits10 + #define __glibcpp_float_radix __glibcpp_f64_radix + #define __glibcpp_float_epsilon __glibcpp_f64_epsilon + #define __glibcpp_float_round_error __glibcpp_f64_round_error + #define __glibcpp_float_min_exponent __glibcpp_f64_min_exponent + #define __glibcpp_float_min_exponent10 __glibcpp_f64_min_exponent10 + #define __glibcpp_float_max_exponent __glibcpp_f64_max_exponent + #define __glibcpp_float_max_exponent10 __glibcpp_f64_max_exponent10 + #elif __glibcpp_float_bits == 80 + #define __glibcpp_float_min __glibcpp_f80_min + #define __glibcpp_float_max __glibcpp_f80_max + #define __glibcpp_float_digits __glibcpp_f80_digits + #define __glibcpp_float_digits10 __glibcpp_f80_digits10 + #define __glibcpp_float_radix __glibcpp_f80_radix + #define __glibcpp_float_epsilon __glibcpp_f80_epsilon + #define __glibcpp_float_round_error __glibcpp_f80_round_error + #define __glibcpp_float_min_exponent __glibcpp_f80_min_exponent + #define __glibcpp_float_min_exponent10 __glibcpp_f80_min_exponent10 + #define __glibcpp_float_max_exponent __glibcpp_f80_max_exponent + #define __glibcpp_float_max_exponent10 __glibcpp_f80_max_exponent10 + #else + // You must define these macros in the configuration file. + #endif + + // FIXME: These are just stubs and inkorrect + + #ifndef __glibcpp_float_has_infinity + #define __glibcpp_float_has_infinity false + #endif + + #ifndef __glibcpp_float_has_quiet_NaM + #define __glibcpp_float_has_quiet_NaN false + #endif + + #ifndef __glibcpp_float_has_signaling_NaN + #define __glibcpp_float_has_signaling_NaN false + #endif + + #ifndef __glibcpp_float_has_denorm + #define __glibcpp_float_has_denorm denorm_absent + #endif + + #ifndef __glibcpp_float_has_denorm_loss + #define __glibcpp_float_has_denorm_loss false + #endif + + #ifndef __glibcpp_float_infinity + #define __glibcpp_float_infinity 0.0F + #endif + + #ifndef __glibcpp_float_quiet_NaN + #define __glibcpp_float_quiet_NaN 0.0F + #endif + + #ifndef __glibcpp_float_signaling_NaN + #define __glibcpp_float_signaling_NaN 0.0F + #endif + + #ifndef __glibcpp_float_denorm_min + #define __glibcpp_float_denorm_min 0.0F + #endif + + #ifndef __glibcpp_float_is_iec559 + #define __glibcpp_float_is_iec559 false + #endif + + #ifndef __glibcpp_float_is_bounded + #define __glibcpp_float_is_bounded true + #endif + + #ifndef __glibcpp_float_is_modulo + #define __glibcpp_float_is_modulo false + #endif + + #ifndef __glibcpp_float_traps + #define __glibcpp_float_traps false + #endif + + #ifndef __glibcpp_float_tinyness_before + #define __glibcpp_float_tinyness_before false + #endif + + #ifndef __glibcpp_float_round_style + #define __glibcpp_float_round_style round_toward_zero + #endif + + // double + + #if __glibcpp_double_bits == 32 + #define __glibcpp_double_min __glibcpp_f32_min + #define __glibcpp_double_max __glibcpp_f32_max + #define __glibcpp_double_digits __glibcpp_f32_digits + #define __glibcpp_double_digits10 __glibcpp_f32_digits10 + #define __glibcpp_double_radix __glibcpp_f32_radix + #define __glibcpp_double_epsilon __glibcpp_f32_epsilon + #define __glibcpp_double_round_error __glibcpp_f32_round_error + #define __glibcpp_double_min_exponent __glibcpp_f32_min_exponent + #define __glibcpp_double_min_exponent10 __glibcpp_f32_min_exponent10 + #define __glibcpp_double_max_exponent __glibcpp_f32_max_exponent + #define __glibcpp_double_max_exponent10 __glibcpp_f32_max_exponent10 + #elif __glibcpp_double_bits == 64 + #define __glibcpp_double_min __glibcpp_f64_min + #define __glibcpp_double_max __glibcpp_f64_max + #define __glibcpp_double_digits __glibcpp_f64_digits + #define __glibcpp_double_digits10 __glibcpp_f64_digits10 + #define __glibcpp_double_radix __glibcpp_f64_radix + #define __glibcpp_double_epsilon __glibcpp_f64_epsilon + #define __glibcpp_double_round_error __glibcpp_f64_round_error + #define __glibcpp_double_min_exponent __glibcpp_f64_min_exponent + #define __glibcpp_double_min_exponent10 __glibcpp_f64_min_exponent10 + #define __glibcpp_double_max_exponent __glibcpp_f64_max_exponent + #define __glibcpp_double_max_exponent10 __glibcpp_f64_max_exponent10 + #elif __glibcpp_double_bits == 80 + #define __glibcpp_double_min __glibcpp_f80_min + #define __glibcpp_double_max __glibcpp_f80_max + #define __glibcpp_double_digits __glibcpp_f80_digits + #define __glibcpp_double_digits10 __glibcpp_f80_digits10 + #define __glibcpp_double_radix __glibcpp_f80_radix + #define __glibcpp_double_epsilon __glibcpp_f80_epsilon + #define __glibcpp_double_round_error __glibcpp_f80_round_error + #define __glibcpp_double_min_exponent __glibcpp_f80_min_exponent + #define __glibcpp_double_min_exponent10 __glibcpp_f80_min_exponent10 + #define __glibcpp_double_max_exponent __glibcpp_f80_max_exponent + #define __glibcpp_double_max_exponent10 __glibcpp_f80_max_exponent10 + #else + // You must define these macros in the configuration file. + #endif + + // FIXME: These are just stubs and inkorrect + + #ifndef __glibcpp_double_has_infinity + #define __glibcpp_double_has_infinity false + #endif + + #ifndef __glibcpp_double_has_quiet_NaM + #define __glibcpp_double_has_quiet_NaN false + #endif + + #ifndef __glibcpp_double_has_signaling_NaN + #define __glibcpp_double_has_signaling_NaN false + #endif + + #ifndef __glibcpp_double_has_denorm + #define __glibcpp_double_has_denorm denorm_absent + #endif + + #ifndef __glibcpp_double_has_denorm_loss + #define __glibcpp_double_has_denorm_loss false + #endif + + #ifndef __glibcpp_double_infinity + #define __glibcpp_double_infinity 0.0 + #endif + + #ifndef __glibcpp_double_quiet_NaN + #define __glibcpp_double_quiet_NaN 0.0 + #endif + + #ifndef __glibcpp_double_signaling_NaN + #define __glibcpp_double_signaling_NaN 0.0 + #endif + + #ifndef __glibcpp_double_denorm_min + #define __glibcpp_double_denorm_min 0.0 + #endif + + #ifndef __glibcpp_double_is_iec559 + #define __glibcpp_double_is_iec559 false + #endif + + #ifndef __glibcpp_double_is_bounded + #define __glibcpp_double_is_bounded true + #endif + + #ifndef __glibcpp_double_is_modulo + #define __glibcpp_double_is_modulo false + #endif + + #ifndef __glibcpp_double_traps + #define __glibcpp_double_traps false + #endif + + #ifndef __glibcpp_double_tinyness_before + #define __glibcpp_double_tinyness_before false + #endif + + #ifndef __glibcpp_double_round_style + #define __glibcpp_double_round_style round_toward_zero + #endif + + // long double + + #if __glibcpp_long_double_bits == 32 + #define __glibcpp_long_double_min __glibcpp_f32_min + #define __glibcpp_long_double_max __glibcpp_f32_max + #define __glibcpp_long_double_digits __glibcpp_f32_digits + #define __glibcpp_long_double_digits10 __glibcpp_f32_digits10 + #define __glibcpp_long_double_radix __glibcpp_f32_radix + #define __glibcpp_long_double_epsilon __glibcpp_f32_epsilon + #define __glibcpp_long_double_round_error __glibcpp_f32_round_error + #define __glibcpp_long_double_min_exponent __glibcpp_f32_min_exponent + #define __glibcpp_long_double_min_exponent10 __glibcpp_f32_min_exponent10 + #define __glibcpp_long_double_max_exponent __glibcpp_f32_max_exponent + #define __glibcpp_long_double_max_exponent10 __glibcpp_f32_max_exponent10 + #elif __glibcpp_long_double_bits == 64 + #define __glibcpp_long_double_min __glibcpp_f64_min + #define __glibcpp_long_double_max __glibcpp_f64_max + #define __glibcpp_long_double_digits __glibcpp_f64_digits + #define __glibcpp_long_double_digits10 __glibcpp_f64_digits10 + #define __glibcpp_long_double_radix __glibcpp_f64_radix + #define __glibcpp_long_double_epsilon __glibcpp_f64_epsilon + #define __glibcpp_long_double_round_error __glibcpp_f64_round_error + #define __glibcpp_long_double_min_exponent __glibcpp_f64_min_exponent + #define __glibcpp_long_double_min_exponent10 __glibcpp_f64_min_exponent10 + #define __glibcpp_long_double_max_exponent __glibcpp_f64_max_exponent + #define __glibcpp_long_double_max_exponent10 __glibcpp_f64_max_exponent10 + #elif __glibcpp_long_double_bits == 80 + #define __glibcpp_long_double_min __glibcpp_f80_min + #define __glibcpp_long_double_max __glibcpp_f80_max + #define __glibcpp_long_double_digits __glibcpp_f80_digits + #define __glibcpp_long_double_digits10 __glibcpp_f80_digits10 + #define __glibcpp_long_double_radix __glibcpp_f80_radix + #define __glibcpp_long_double_epsilon __glibcpp_f80_epsilon + #define __glibcpp_long_double_round_error __glibcpp_f80_round_error + #define __glibcpp_long_double_min_exponent __glibcpp_f80_min_exponent + #define __glibcpp_long_double_min_exponent10 __glibcpp_f80_min_exponent10 + #define __glibcpp_long_double_max_exponent __glibcpp_f80_max_exponent + #define __glibcpp_long_double_max_exponent10 __glibcpp_f80_max_exponent10 + #elif __glibcpp_long_double_bits == 96 + #define __glibcpp_long_double_min __glibcpp_f96_min + #define __glibcpp_long_double_max __glibcpp_f96_max + #define __glibcpp_long_double_digits __glibcpp_f96_digits + #define __glibcpp_long_double_digits10 __glibcpp_f96_digits10 + #define __glibcpp_long_double_radix __glibcpp_f96_radix + #define __glibcpp_long_double_epsilon __glibcpp_f96_epsilon + #define __glibcpp_long_double_round_error __glibcpp_f96_round_error + #define __glibcpp_long_double_min_exponent __glibcpp_f96_min_exponent + #define __glibcpp_long_double_min_exponent10 __glibcpp_f96_min_exponent10 + #define __glibcpp_long_double_max_exponent __glibcpp_f96_max_exponent + #define __glibcpp_long_double_max_exponent10 __glibcpp_f96_max_exponent10 + #elif __glibcpp_long_double_bits == 128 + #define __glibcpp_long_double_min __glibcpp_f128_min + #define __glibcpp_long_double_max __glibcpp_f128_max + #define __glibcpp_long_double_digits __glibcpp_f128_digits + #define __glibcpp_long_double_digits10 __glibcpp_f128_digits10 + #define __glibcpp_long_double_radix __glibcpp_f128_radix + #define __glibcpp_long_double_epsilon __glibcpp_f128_epsilon + #define __glibcpp_long_double_round_error __glibcpp_f128_round_error + #define __glibcpp_long_double_min_exponent __glibcpp_f128_min_exponent + #define __glibcpp_long_double_min_exponent10 __glibcpp_f128_min_exponent10 + #define __glibcpp_long_double_max_exponent __glibcpp_f128_max_exponent + #define __glibcpp_long_double_max_exponent10 __glibcpp_f128_max_exponent10 + #else + // You must define these macros in the configuration file. + #endif + + // FIXME: These are just stubs and inkorrect + + #ifndef __glibcpp_long_double_has_infinity + #define __glibcpp_long_double_has_infinity false + #endif + + #ifndef __glibcpp_long_double_has_quiet_NaN + #define __glibcpp_long_double_has_quiet_NaN false + #endif + + #ifndef __glibcpp_long_double_has_signaling_NaN + #define __glibcpp_long_double_has_signaling_NaN false + #endif + + #ifndef __glibcpp_long_double_has_denorm + #define __glibcpp_long_double_has_denorm denorm_absent + #endif + + #ifndef __glibcpp_long_double_has_denorm_loss + #define __glibcpp_long_double_has_denorm_loss false + #endif + + #ifndef __glibcpp_long_double_infinity + #define __glibcpp_long_double_infinity 0.0L + #endif + + #ifndef __glibcpp_long_double_quiet_NaN + #define __glibcpp_long_double_quiet_NaN 0.0L + #endif + + #ifndef __glibcpp_long_double_signaling_NaN + #define __glibcpp_long_double_signaling_NaN 0.0L + #endif + + #ifndef __glibcpp_long_double_denorm_min + #define __glibcpp_long_double_denorm_min 0.0L + #endif + + #ifndef __glibcpp_long_double_is_iec559 + #define __glibcpp_long_double_is_iec559 false + #endif + + #ifndef __glibcpp_long_double_is_bounded + #define __glibcpp_long_double_is_bounded false + #endif + + #ifndef __glibcpp_long_double_is_modulo + #define __glibcpp_long_double_is_modulo false + #endif + + #ifndef __glibcpp_long_double_traps + #define __glibcpp_long_double_traps false + #endif + + #ifndef __glibcpp_long_double_tinyness_before + #define __glibcpp_long_double_tinyness_before false + #endif + + #ifndef __glibcpp_long_double_round_style + #define __glibcpp_long_double_round_style round_toward_zero + #endif + + + namespace std + { + enum float_round_style + { + round_indeterminate = -1, + round_toward_zero = 0, + round_to_nearest = 1, + round_toward_infinity = 2, + round_toward_neg_infinity = 3 + }; + + enum float_denorm_style + { + denorm_indeterminate = -1, + denorm_absent = 0, + denorm_present = 1 + }; + + // + // The primary class traits + // + template + struct numeric_limits + { + static const bool is_specialized = false; + + static _Tp min() throw() { return static_cast<_Tp>(0); } + static _Tp max() throw() { return static_cast<_Tp>(0); } + + static const int digits = 0; + static const int digits10 = 0; + static const bool is_signed = false; + static const bool is_integer = false; + static const bool is_exact = false; + static const int radix = 0; + + static _Tp epsilon() throw() { return static_cast<_Tp>(0); } + static _Tp round_error() throw() { return static_cast<_Tp>(0); } + + static const int min_exponent = 0; + static const int min_exponent10 = 0; + static const int max_exponent = 0; + static const int max_exponent10 = 0; + + static const bool has_infinity = false; + static const bool has_quiet_NaN = false; + static const bool has_signaling_NaN = false; + static const float_denorm_style has_denorm = denorm_absent; + static const bool has_denorm_loss = false; + + static _Tp infinity() throw() { return static_cast<_Tp>(0); } + static _Tp quiet_NaN() throw() { return static_cast<_Tp>(0); } + static _Tp signaling_NaN() throw() { return static_cast<_Tp>(0); } + static _Tp denorm_min() throw() { return static_cast<_Tp>(0); } + + static const bool is_iec559 = false; + static const bool is_bounded = false; + static const bool is_modulo = false; + + static const bool traps = false; + static const bool tinyness_before = false; + static const float_round_style round_style = round_toward_zero; + }; + + template + const bool + numeric_limits<_Tp>::is_specialized; + + template + const int + numeric_limits<_Tp>::digits; + + template + const int + numeric_limits<_Tp>::digits10; + + template + const bool + numeric_limits<_Tp>::is_signed; + + template + const bool + numeric_limits<_Tp>::is_integer; + + template + const bool + numeric_limits<_Tp>::is_exact; + + template + const int + numeric_limits<_Tp>::radix; + + template + const int + numeric_limits<_Tp>::min_exponent; + + template + const int + numeric_limits<_Tp>::min_exponent10; + + template + const int + numeric_limits<_Tp>::max_exponent; + + template + const int + numeric_limits<_Tp>::max_exponent10; + + template + const bool + numeric_limits<_Tp>::has_infinity; + + template + const bool + numeric_limits<_Tp>::has_quiet_NaN; + + template + const bool + numeric_limits<_Tp>::has_signaling_NaN; + + template + const float_denorm_style + numeric_limits<_Tp>::has_denorm; + + template + const bool + numeric_limits<_Tp>::has_denorm_loss; + + template + const bool + numeric_limits<_Tp>::is_iec559; + + template + const bool + numeric_limits<_Tp>::is_bounded; + + template + const bool + numeric_limits<_Tp>::is_modulo; + + template + const bool + numeric_limits<_Tp>::traps; + + template + const bool + numeric_limits<_Tp>::tinyness_before; + + template + const float_round_style + numeric_limits<_Tp>::round_style; + + // Now there follow 15 explicit specializations. Yes, 15. Make sure + // you get the count right. + + template<> + struct numeric_limits + { + static const bool is_specialized = true; + + static bool min() throw() + { return false; } + + static bool max() throw() + { return true; } + + static const int digits = __glibcpp_bool_digits; + static const int digits10 = 1; + static const bool is_signed = false; + static const bool is_integer = true; + static const bool is_exact = true; + static const int radix = 2; + static bool epsilon() throw() + { return false; } + static bool round_error() throw() + { return false; } + + static const int min_exponent = 0; + static const int min_exponent10 = 0; + static const int max_exponent = 0; + static const int max_exponent10 = 0; + + static const bool has_infinity = false; + static const bool has_quiet_NaN = false; + static const bool has_signaling_NaN = false; + static const float_denorm_style has_denorm = denorm_absent; + static const bool has_denorm_loss = false; + + static bool infinity() throw() + { return false; } + static bool quiet_NaN() throw() + { return false; } + static bool signaling_NaN() throw() + { return false; } + static bool denorm_min() throw() + { return false; } + + static const bool is_iec559 = true; + static const bool is_bounded = true; + static const bool is_modulo = true; + + // It is not clear what it means for a boolean type to trap. + // This is a DR on the LWG issue list. Here, I use integer + // promotion semantics. + static const bool traps = __glibcpp_signed_int_traps + || __glibcpp_signed_long_traps; + static const bool tinyness_before = false; + static const float_round_style round_style = round_toward_zero; + }; + + #undef __glibcpp_bool_digits + + template<> + struct numeric_limits + { + static const bool is_specialized = true; + + static char min() throw() + { return __glibcpp_char_min; } + static char max() throw() + { return __glibcpp_char_max; } + + static const int digits = __glibcpp_char_digits; + static const int digits10 = __glibcpp_char_digits10; + static const bool is_signed = __glibcpp_plain_char_is_signed; + static const bool is_integer = true; + static const bool is_exact = true; + static const int radix = 2; + static char epsilon() throw() + { return char(); } + static char round_error() throw() + { return char(); } + + static const int min_exponent = 0; + static const int min_exponent10 = 0; + static const int max_exponent = 0; + static const int max_exponent10 = 0; + + static const bool has_infinity = false; + static const bool has_quiet_NaN = false; + static const bool has_signaling_NaN = false; + static const float_denorm_style has_denorm = denorm_absent; + static const bool has_denorm_loss = false; + + static char infinity() throw() + { return char(); } + static char quiet_NaN() throw() + { return char(); } + static char signaling_NaN() throw() + { return char(); } + static char denorm_min() throw() + { return static_cast(0); } + + static const bool is_iec559 = false; + static const bool is_bounded = true; + static const bool is_modulo = false; + + static const bool traps = __glibcpp_signed_char_traps; + static const bool tinyness_before = false; + static const float_round_style round_style = round_toward_zero; + }; + + #undef __glibcpp_char_min + #undef __glibcpp_char_max + #undef __glibcpp_char_digits + #undef __glibcpp_char_digits10 + #undef __glibcpp_char_is_signed + #undef __glibcpp_char_traps + + + template<> + struct numeric_limits + { + static const bool is_specialized = true; + + static signed char min() throw() + { return __glibcpp_signed_char_min; } + static signed char max() throw() + { return __glibcpp_signed_char_max; } + + static const int digits = __glibcpp_signed_char_digits; + static const int digits10 = __glibcpp_signed_char_digits10; + static const bool is_signed = true; + static const bool is_integer = true; + static const bool is_exact = true; + static const int radix = 2; + static signed char epsilon() throw() + { return 0; } + static signed char round_error() throw() + { return 0; } + + static const int min_exponent = 0; + static const int min_exponent10 = 0; + static const int max_exponent = 0; + static const int max_exponent10 = 0; + + static const bool has_infinity = false; + static const bool has_quiet_NaN = false; + static const bool has_signaling_NaN = false; + static const float_denorm_style has_denorm = denorm_absent; + static const bool has_denorm_loss = false; + + static signed char infinity() throw() + { return static_cast(0); } + static signed char quiet_NaN() throw() + { return static_cast(0); } + static signed char signaling_NaN() throw() + { return static_cast(0); } + static signed char denorm_min() throw() + { return static_cast(0); } + + static const bool is_iec559 = false; + static const bool is_bounded = true; + static const bool is_modulo = false; + + static const bool traps = __glibcpp_signed_char_traps; + static const bool tinyness_before = false; + static const float_round_style round_style = round_toward_zero; + }; + + #undef __glibcpp_signed_char_min + #undef __glibcpp_signed_char_max + #undef __glibcpp_signed_char_digits + #undef __glibcpp_signed_char_digits10 + #undef __glibcpp_signed_char_traps + + template<> + struct numeric_limits + { + static const bool is_specialized = true; + + static unsigned char min() throw() + { return 0; } + static unsigned char max() throw() + { return __glibcpp_unsigned_char_max; } + + static const int digits = __glibcpp_unsigned_char_digits; + static const int digits10 = __glibcpp_unsigned_char_digits10; + static const bool is_signed = false; + static const bool is_integer = true; + static const bool is_exact = true; + static const int radix = 2; + static unsigned char epsilon() throw() + { return 0; } + static unsigned char round_error() throw() + { return 0; } + + static const int min_exponent = 0; + static const int min_exponent10 = 0; + static const int max_exponent = 0; + static const int max_exponent10 = 0; + + static const bool has_infinity = false; + static const bool has_quiet_NaN = false; + static const bool has_signaling_NaN = false; + static const float_denorm_style has_denorm = denorm_absent; + static const bool has_denorm_loss = false; + + static unsigned char infinity() throw() + { return static_cast(0); } + static unsigned char quiet_NaN() throw() + { return static_cast(0); } + static unsigned char signaling_NaN() throw() + { return static_cast(0); } + static unsigned char denorm_min() throw() + { return static_cast(0); } + + static const bool is_iec559 = false; + static const bool is_bounded = true; + static const bool is_modulo = true; + + static const bool traps = __glibcpp_unsigned_char_traps; + static const bool tinyness_before = false; + static const float_round_style round_style = round_toward_zero; + }; + + #undef __glibcpp_unsigned_char_max + #undef __glibcpp_unsigned_char_digits + #undef __glibcpp_unsigned_char_digits10 + #undef __glibcpp_unsigned_char_traps + + template<> + struct numeric_limits + { + static const bool is_specialized = true; + + static wchar_t min() throw() + { return __glibcpp_wchar_t_min; } + static wchar_t max() throw() + { return __glibcpp_wchar_t_max; } + + static const int digits = __glibcpp_wchar_t_digits; + static const int digits10 = __glibcpp_wchar_t_digits10; + static const bool is_signed = __glibcpp_wchar_t_is_signed; + static const bool is_integer = true; + static const bool is_exact = true; + static const int radix = 2; + static wchar_t epsilon() throw() + { return 0; } + static wchar_t round_error() throw() + { return 0; } + + static const int min_exponent = 0; + static const int min_exponent10 = 0; + static const int max_exponent = 0; + static const int max_exponent10 = 0; + + static const bool has_infinity = false; + static const bool has_quiet_NaN = false; + static const bool has_signaling_NaN = false; + static const float_denorm_style has_denorm = denorm_absent; + static const bool has_denorm_loss = false; + + static wchar_t infinity() throw() + { return wchar_t(); } + static wchar_t quiet_NaN() throw() + { return wchar_t(); } + static wchar_t signaling_NaN() throw() + { return wchar_t(); } + static wchar_t denorm_min() throw() + { return wchar_t(); } + + static const bool is_iec559 = false; + static const bool is_bounded = true; + static const bool is_modulo = false; + + static const bool traps = __glibcpp_wchar_t_traps; + static const bool tinyness_before = false; + static const float_round_style round_style = round_toward_zero; + }; + + #undef __glibcpp_wchar_t_min + #undef __glibcpp_wchar_t_max + #undef __glibcpp_wchar_t_digits + #undef __glibcpp_wchar_t_digits10 + #undef __glibcpp_wchar_t_is_signed + #undef __glibcpp_wchar_t_traps + + template<> + struct numeric_limits + { + static const bool is_specialized = true; + + static short min() throw() + { return __glibcpp_signed_short_min; } + static short max() throw() + { return __glibcpp_signed_short_max; } + + static const int digits = __glibcpp_signed_short_digits; + static const int digits10 = __glibcpp_signed_short_digits10; + static const bool is_signed = true; + static const bool is_integer = true; + static const bool is_exact = true; + static const int radix = 2; + static short epsilon() throw() + { return 0; } + static short round_error() throw() + { return 0; } + + static const int min_exponent = 0; + static const int min_exponent10 = 0; + static const int max_exponent = 0; + static const int max_exponent10 = 0; + + static const bool has_infinity = false; + static const bool has_quiet_NaN = false; + static const bool has_signaling_NaN = false; + static const float_denorm_style has_denorm = denorm_absent; + static const bool has_denorm_loss = false; + + static short infinity() throw() + { return short(); } + static short quiet_NaN() throw() + { return short(); } + static short signaling_NaN() throw() + { return short(); } + static short denorm_min() throw() + { return short(); } + + static const bool is_iec559 = true; + static const bool is_bounded = true; + static const bool is_modulo = false; + + static const bool traps = __glibcpp_signed_short_traps; + static const bool tinyness_before = false; + static const float_round_style round_style = round_toward_zero; + }; + + #undef __glibcpp_signed_short_min + #undef __glibcpp_signed_short_max + #undef __glibcpp_signed_short_digits + #undef __glibcpp_signed_short_digits10 + #undef __glibcpp_signed_short_traps + + template<> + struct numeric_limits + { + static const bool is_specialized = true; + + static unsigned short min() throw() + { return 0; } + static unsigned short max() throw() + { return __glibcpp_unsigned_short_max; } + + static const int digits = __glibcpp_unsigned_short_digits; + static const int digits10 = __glibcpp_unsigned_short_digits10; + static const bool is_signed = false; + static const bool is_integer = true; + static const bool is_exact = true; + static const int radix = 2; + static unsigned short epsilon() throw() + { return 0; } + static unsigned short round_error() throw() + { return 0; } + + static const int min_exponent = 0; + static const int min_exponent10 = 0; + static const int max_exponent = 0; + static const int max_exponent10 = 0; + + static const bool has_infinity = false; + static const bool has_quiet_NaN = false; + static const bool has_signaling_NaN = false; + static const float_denorm_style has_denorm = denorm_absent; + static const bool has_denorm_loss = false; + + static unsigned short infinity() throw() + { return static_cast(0); } + static unsigned short quiet_NaN() throw() + { return static_cast(0); } + static unsigned short signaling_NaN() throw() + { return static_cast(0); } + static unsigned short denorm_min() throw() + { return static_cast(0); } + + static const bool is_iec559 = true; + static const bool is_bounded = true; + static const bool is_modulo = true; + + static const bool traps = __glibcpp_unsigned_short_traps; + static const bool tinyness_before = false; + static const float_round_style round_style = round_toward_zero; + }; + + #undef __glibcpp_unsigned_short_max + #undef __glibcpp_unsigned_short_digits + #undef __glibcpp_unsigned_short_digits10 + #undef __glibcpp_unsigned_short_traps + + template<> + struct numeric_limits + { + static const bool is_specialized = true; + + static int min() throw() + { return __glibcpp_signed_int_min; } + static int max() throw() + { return __glibcpp_signed_int_max; } + + static const int digits = __glibcpp_signed_int_digits; + static const int digits10 = __glibcpp_signed_int_digits10; + static const bool is_signed = true; + static const bool is_integer = true; + static const bool is_exact = true; + static const int radix = 2; + static int epsilon() throw() + { return 0; } + static int round_error() throw() + { return 0; } + + static const int min_exponent = 0; + static const int min_exponent10 = 0; + static const int max_exponent = 0; + static const int max_exponent10 = 0; + + static const bool has_infinity = false; + static const bool has_quiet_NaN = false; + static const bool has_signaling_NaN = false; + static const float_denorm_style has_denorm = denorm_absent; + static const bool has_denorm_loss = false; + + static int infinity() throw() + { return static_cast(0); } + static int quiet_NaN() throw() + { return static_cast(0); } + static int signaling_NaN() throw() + { return static_cast(0); } + static int denorm_min() throw() + { return static_cast(0); } + + static const bool is_iec559 = true; + static const bool is_bounded = true; + static const bool is_modulo = false; + + static const bool traps = __glibcpp_signed_int_traps; + static const bool tinyness_before = false; + static const float_round_style round_style = round_toward_zero; + }; + + #undef __glibcpp_signed_int_min + #undef __glibcpp_signed_int_max + #undef __glibcpp_signed_int_digits + #undef __glibcpp_signed_int_digits10 + #undef __glibcpp_signed_int_traps + + template<> + struct numeric_limits + { + static const bool is_specialized = true; + + static unsigned int min() throw() + { return 0; } + static unsigned int max() throw() + { return __glibcpp_unsigned_int_max; } + + static const int digits = __glibcpp_unsigned_int_digits; + static const int digits10 = __glibcpp_unsigned_int_digits10; + static const bool is_signed = false; + static const bool is_integer = true; + static const bool is_exact = true; + static const int radix = 2; + static unsigned int epsilon() throw() + { return 0; } + static unsigned int round_error() throw() + { return 0; } + + static const int min_exponent = 0; + static const int min_exponent10 = 0; + static const int max_exponent = 0; + static const int max_exponent10 = 0; + + static const bool has_infinity = false; + static const bool has_quiet_NaN = false; + static const bool has_signaling_NaN = false; + static const float_denorm_style has_denorm = denorm_absent; + static const bool has_denorm_loss = false; + + static unsigned int infinity() throw() + { return static_cast(0); } + static unsigned int quiet_NaN() throw() + { return static_cast(0); } + static unsigned int signaling_NaN() throw() + { return static_cast(0); } + static unsigned int denorm_min() throw() + { return static_cast(0); } + + static const bool is_iec559 = true; + static const bool is_bounded = true; + static const bool is_modulo = true; + + static const bool traps = __glibcpp_unsigned_int_traps; + static const bool tinyness_before = false; + static const float_round_style round_style = round_toward_zero; + }; + + #undef __glibcpp_unsigned_int_max + #undef __glibcpp_unsigned_int_digits + #undef __glibcpp_unsigned_int_digits10 + #undef __glibcpp_unsigned_int_traps + + template<> + struct numeric_limits + { + static const bool is_specialized = true; + + static long min() throw() + { return __glibcpp_signed_long_min; } + static long max() throw() + { return __glibcpp_signed_long_max; } + + static const int digits = __glibcpp_signed_long_digits; + static const int digits10 = __glibcpp_signed_long_digits10; + static const bool is_signed = true; + static const bool is_integer = true; + static const bool is_exact = true; + static const int radix = 2; + static long epsilon() throw() + { return 0; } + static long round_error() throw() + { return 0; } + + static const int min_exponent = 0; + static const int min_exponent10 = 0; + static const int max_exponent = 0; + static const int max_exponent10 = 0; + + static const bool has_infinity = false; + static const bool has_quiet_NaN = false; + static const bool has_signaling_NaN = false; + static const float_denorm_style has_denorm = denorm_absent; + static const bool has_denorm_loss = false; + + static long infinity() throw() + { return static_cast(0); } + static long quiet_NaN() throw() + { return static_cast(0); } + static long signaling_NaN() throw() + { return static_cast(0); } + static long denorm_min() throw() + { return static_cast(0); } + + static const bool is_iec559 = true; + static const bool is_bounded = true; + static const bool is_modulo = false; + + static const bool traps = __glibcpp_signed_long_traps; + static const bool tinyness_before = false; + static const float_round_style round_style = round_toward_zero; + }; + + #undef __glibcpp_signed_long_min + #undef __glibcpp_signed_long_max + #undef __glibcpp_signed_long_digits + #undef __glibcpp_signed_long_digits10 + #undef __glibcpp_signed_long_traps + + template<> + struct numeric_limits + { + static const bool is_specialized = true; + + static unsigned long min() throw() + { return 0; } + static unsigned long max() throw() + { return __glibcpp_unsigned_long_max; } + + static const int digits = __glibcpp_unsigned_long_digits; + static const int digits10 = __glibcpp_unsigned_long_digits10; + static const bool is_signed = false; + static const bool is_integer = true; + static const bool is_exact = true; + static const int radix = 2; + static unsigned long epsilon() throw() + { return 0; } + static unsigned long round_error() throw() + { return 0; } + + static const int min_exponent = 0; + static const int min_exponent10 = 0; + static const int max_exponent = 0; + static const int max_exponent10 = 0; + + static const bool has_infinity = false; + static const bool has_quiet_NaN = false; + static const bool has_signaling_NaN = false; + static const float_denorm_style has_denorm = denorm_absent; + static const bool has_denorm_loss = false; + + static unsigned long infinity() throw() + { return static_cast(0); } + static unsigned long quiet_NaN() throw() + { return static_cast(0); } + static unsigned long signaling_NaN() throw() + { return static_cast(0); } + static unsigned long denorm_min() throw() + { return static_cast(0); } + + static const bool is_iec559 = true; + static const bool is_bounded = true; + static const bool is_modulo = true; + + static const bool traps = __glibcpp_unsigned_long_traps; + static const bool tinyness_before = false; + static const float_round_style round_style = round_toward_zero; + }; + + #undef __glibcpp_unsigned_long_max + #undef __glibcpp_unsigned_long_digits + #undef __glibcpp_unsigned_long_digits10 + #undef __glibcpp_unsigned_long_traps + + #ifdef _GLIBCPP_USE_LONG_LONG + + template<> + struct numeric_limits + { + static const bool is_specialized = true; + + static long long min() throw() + { return __glibcpp_signed_long_long_min; } + static long long max() throw() + { return __glibcpp_signed_long_long_max; } + + static const int digits = __glibcpp_signed_long_long_digits; + static const int digits10 = __glibcpp_signed_long_long_digits10; + static const bool is_signed = true; + static const bool is_integer = true; + static const bool is_exact = true; + static const int radix = 2; + static long long epsilon() throw() + { return 0; } + static long long round_error() throw() + { return 0; } + + static const int min_exponent = 0; + static const int min_exponent10 = 0; + static const int max_exponent = 0; + static const int max_exponent10 = 0; + + static const bool has_infinity = false; + static const bool has_quiet_NaN = false; + static const bool has_signaling_NaN = false; + static const float_denorm_style has_denorm = denorm_absent; + static const bool has_denorm_loss = false; + + static long long infinity() throw() + { return static_cast(0); } + static long long quiet_NaN() throw() + { return static_cast(0); } + static long long signaling_NaN() throw() + { return static_cast(0); } + static long long denorm_min() throw() + { return static_cast(0); } + + static const bool is_iec559 = true; + static const bool is_bounded = true; + static const bool is_modulo = false; + + static const bool traps = __glibcpp_signed_long_long_traps; + static const bool tinyness_before = false; + static const float_round_style round_style = round_toward_zero; + }; + + #undef __glibcpp_signed_long_long_min + #undef __glibcpp_signed_long_long_max + #undef __glibcpp_signed_long_long_digits + #undef __glibcpp_signed_long_long_digits10 + #undef __glibcpp_signed_long_long_traps + + template<> + struct numeric_limits + { + static const bool is_specialized = true; + + static unsigned long long min() throw() + { return 0; } + static unsigned long long max() throw() + { return __glibcpp_unsigned_long_long_max; } + + static const int digits = __glibcpp_unsigned_long_long_digits; + static const int digits10 = __glibcpp_unsigned_long_long_digits10; + static const bool is_signed = false; + static const bool is_integer = true; + static const bool is_exact = true; + static const int radix = 2; + static unsigned long long epsilon() throw() + { return 0; } + static unsigned long long round_error() throw() + { return 0; } + + static const int min_exponent = 0; + static const int min_exponent10 = 0; + static const int max_exponent = 0; + static const int max_exponent10 = 0; + + static const bool has_infinity = false; + static const bool has_quiet_NaN = false; + static const bool has_signaling_NaN = false; + static const float_denorm_style has_denorm = denorm_absent; + static const bool has_denorm_loss = false; + + static unsigned long long infinity() throw() + { return static_cast(0); } + static unsigned long long quiet_NaN() throw() + { return static_cast(0); } + static unsigned long long signaling_NaN() throw() + { return static_cast(0); } + static unsigned long long denorm_min() throw() + { return static_cast(0); } + + static const bool is_iec559 = true; + static const bool is_bounded = true; + static const bool is_modulo = true; + + static const bool traps = true; + static const bool tinyness_before = false; + static const float_round_style round_style = round_toward_zero; + }; + + #undef __glibcpp_unsigned_long_long_max + #undef __glibcpp_unsigned_long_long_digits + #undef __glibcpp_unsigned_long_long_digits10 + #undef __glibcpp_unsigned_long_long_traps + + #endif // _GLIBCPP_USE_LONG_LONG + + + template<> + struct numeric_limits + { + static const bool is_specialized = true; + + static float min() throw() + { return __glibcpp_float_min; } + static float max() throw() + { return __glibcpp_float_max; } + + static const int digits = __glibcpp_float_digits; + static const int digits10 = __glibcpp_float_digits10; + static const bool is_signed = true; + static const bool is_integer = false; + static const bool is_exact = false; + static const int radix = 2; + static float epsilon() throw() + { return __glibcpp_float_radix; } + static float round_error() throw() + { return __glibcpp_float_round_error; } + + static const int min_exponent = __glibcpp_float_min_exponent; + static const int min_exponent10 = __glibcpp_float_min_exponent10; + static const int max_exponent = __glibcpp_float_max_exponent; + static const int max_exponent10 = __glibcpp_float_max_exponent10; + + static const bool has_infinity = __glibcpp_float_has_infinity; + static const bool has_quiet_NaN = __glibcpp_float_has_quiet_NaN; + static const bool has_signaling_NaN = __glibcpp_float_has_signaling_NaN; + static const float_denorm_style has_denorm = __glibcpp_float_has_denorm; + static const bool has_denorm_loss = __glibcpp_float_has_denorm_loss; + + static float infinity() throw() + { return __glibcpp_float_infinity; } + static float quiet_NaN() throw() + { return __glibcpp_float_quiet_NaN; } + static float signaling_NaN() throw() + { return __glibcpp_float_signaling_NaN; } + static float denorm_min() throw() + { return __glibcpp_float_denorm_min; } + + static const bool is_iec559 = __glibcpp_float_is_iec559; + static const bool is_bounded = __glibcpp_float_is_bounded; + static const bool is_modulo = __glibcpp_float_is_modulo; + + static const bool traps = __glibcpp_float_traps; + static const bool tinyness_before = __glibcpp_float_tinyness_before; + static const float_round_style round_style = __glibcpp_float_round_style; + }; + + #undef __glibcpp_float_min + #undef __glibcpp_float_max + #undef __glibcpp_float_digits + #undef __glibcpp_float_digits10 + #undef __glibcpp_float_radix + #undef __glibcpp_float_round_error + #undef __glibcpp_float_min_exponent + #undef __glibcpp_float_min_exponent10 + #undef __glibcpp_float_max_exponent + #undef __glibcpp_float_max_exponent10 + #undef __glibcpp_float_has_infinity + #undef __glibcpp_float_has_quiet_NaN + #undef __glibcpp_float_has_signaling_NaN + #undef __glibcpp_float_has_denorm + #undef __glibcpp_float_has_denorm_loss + #undef __glibcpp_float_infinity + #undef __glibcpp_float_quiet_NaN + #undef __glibcpp_float_signaling_NaN + #undef __glibcpp_float_denorm_min + #undef __glibcpp_float_is_iec559 + #undef __glibcpp_float_is_bounded + #undef __glibcpp_float_is_modulo + #undef __glibcpp_float_traps + #undef __glibcpp_float_tinyness_before + #undef __glibcpp_float_round_style + + template<> + struct numeric_limits + { + static const bool is_specialized = true; + + static double min() throw() + { return __glibcpp_double_min; } + static double max() throw() + { return __glibcpp_double_max; } + + static const int digits = __glibcpp_double_digits; + static const int digits10 = __glibcpp_double_digits10; + static const bool is_signed = true; + static const bool is_integer = false; + static const bool is_exact = false; + static const int radix = __glibcpp_double_radix; + static double epsilon() throw() + { return __glibcpp_double_epsilon; } + static double round_error() throw() + { return __glibcpp_double_round_error; } + + static const int min_exponent = __glibcpp_double_min_exponent; + static const int min_exponent10 = __glibcpp_double_min_exponent10; + static const int max_exponent = __glibcpp_double_max_exponent; + static const int max_exponent10 = __glibcpp_double_max_exponent10; + + static const bool has_infinity = __glibcpp_double_has_infinity; + static const bool has_quiet_NaN = __glibcpp_double_has_quiet_NaN; + static const bool has_signaling_NaN = __glibcpp_double_has_signaling_NaN; + static const float_denorm_style has_denorm = + __glibcpp_double_has_denorm;; + static const bool has_denorm_loss = __glibcpp_double_has_denorm_loss;; + + static double infinity() throw() + { return __glibcpp_double_infinity; } + static double quiet_NaN() throw() + { return __glibcpp_double_quiet_NaN; } + static double signaling_NaN() throw() + { return __glibcpp_double_signaling_NaN; } + static double denorm_min() throw() + { return __glibcpp_double_denorm_min; } + + static const bool is_iec559 = __glibcpp_double_is_iec559; + static const bool is_bounded = __glibcpp_double_is_bounded; + static const bool is_modulo = __glibcpp_double_is_modulo; + + static const bool traps = __glibcpp_double_traps; + static const bool tinyness_before = __glibcpp_double_tinyness_before; + static const float_round_style round_style = + __glibcpp_double_round_style; + }; + + #undef __glibcpp_double_min + #undef __glibcpp_double_max + #undef __glibcpp_double_digits + #undef __glibcpp_double_digits10 + #undef __glibcpp_double_radix + #undef __glibcpp_double_round_error + #undef __glibcpp_double_min_exponent + #undef __glibcpp_double_min_exponent10 + #undef __glibcpp_double_max_exponent + #undef __glibcpp_double_max_exponent10 + #undef __glibcpp_double_has_infinity + #undef __glibcpp_double_has_quiet_NaN + #undef __glibcpp_double_has_signaling_NaN + #undef __glibcpp_double_has_denorm + #undef __glibcpp_double_has_denorm_loss + #undef __glibcpp_double_infinity + #undef __glibcpp_double_quiet_NaN + #undef __glibcpp_double_signaling_NaN + #undef __glibcpp_double_denorm_min + #undef __glibcpp_double_is_iec559 + #undef __glibcpp_double_is_bounded + #undef __glibcpp_double_is_modulo + #undef __glibcpp_double_traps + #undef __glibcpp_double_tinyness_before + #undef __glibcpp_double_round_style + + + template<> + struct numeric_limits + { + static const bool is_specialized = true; + + static long double min() throw() + { return __glibcpp_long_double_min; } + static long double max() throw() + { return __glibcpp_long_double_max; } + + static const int digits = __glibcpp_long_double_digits; + static const int digits10 = __glibcpp_long_double_digits10; + static const bool is_signed = true; + static const bool is_integer = false; + static const bool is_exact = false; + static const int radix = __glibcpp_long_double_radix; + static long double epsilon() throw() + { return __glibcpp_long_double_epsilon; } + static long double round_error() throw() + { return __glibcpp_long_double_round_error; } + + static const int min_exponent = __glibcpp_long_double_min_exponent; + static const int min_exponent10 = __glibcpp_long_double_min_exponent10; + static const int max_exponent = __glibcpp_long_double_max_exponent; + static const int max_exponent10 = __glibcpp_long_double_max_exponent10; + + static const bool has_infinity = __glibcpp_long_double_has_infinity; + static const bool has_quiet_NaN = __glibcpp_long_double_has_quiet_NaN; + static const bool has_signaling_NaN = + __glibcpp_long_double_has_signaling_NaN; + static const float_denorm_style has_denorm = + __glibcpp_long_double_has_denorm; + static const bool has_denorm_loss = + __glibcpp_long_double_has_denorm_loss; + + static long double infinity() throw() + { return __glibcpp_long_double_infinity; } + static long double quiet_NaN() throw() + { return __glibcpp_long_double_quiet_NaN; } + static long double signaling_NaN() throw() + { return __glibcpp_long_double_signaling_NaN; } + static long double denorm_min() throw() + { return __glibcpp_long_double_denorm_min; } + + static const bool is_iec559 = __glibcpp_long_double_is_iec559; + static const bool is_bounded = __glibcpp_long_double_is_bounded; + static const bool is_modulo = __glibcpp_long_double_is_modulo; + + static const bool traps = __glibcpp_long_double_traps; + static const bool tinyness_before = __glibcpp_long_double_tinyness_before; + static const float_round_style round_style = + __glibcpp_long_double_round_style; + }; + + #undef __glibcpp_long_double_min + #undef __glibcpp_long_double_max + #undef __glibcpp_long_double_digits + #undef __glibcpp_long_double_digits10 + #undef __glibcpp_long_double_radix + #undef __glibcpp_long_double_round_error + #undef __glibcpp_long_double_min_exponent + #undef __glibcpp_long_double_min_exponent10 + #undef __glibcpp_long_double_max_exponent + #undef __glibcpp_long_double_max_exponent10 + #undef __glibcpp_long_double_has_infinity + #undef __glibcpp_long_double_has_quiet_NaN + #undef __glibcpp_long_double_has_signaling_NaN + #undef __glibcpp_long_double_has_denorm + #undef __glibcpp_long_double_has_denorm_loss + #undef __glibcpp_long_double_infinity + #undef __glibcpp_long_double_quiet_NaN + #undef __glibcpp_long_double_signaling_NaN + #undef __glibcpp_long_double_denorm_min + #undef __glibcpp_long_double_is_iec559 + #undef __glibcpp_long_double_is_bounded + #undef __glibcpp_long_double_is_modulo + #undef __glibcpp_long_double_traps + #undef __glibcpp_long_double_tinyness_before + #undef __glibcpp_long_double_round_style + + } // namespace std + + #endif // _CPP_NUMERIC_LIMITS diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/std_list.h gcc-3.0.1/libstdc++-v3/include/bits/std_list.h *** gcc-3.0/libstdc++-v3/include/bits/std_list.h Mon Feb 19 10:57:40 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/std_list.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/std_map.h gcc-3.0.1/libstdc++-v3/include/bits/std_map.h *** gcc-3.0/libstdc++-v3/include/bits/std_map.h Mon Feb 19 10:57:40 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/std_map.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/std_memory.h gcc-3.0.1/libstdc++-v3/include/bits/std_memory.h *** gcc-3.0/libstdc++-v3/include/bits/std_memory.h Mon May 14 12:49:04 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/std_memory.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * Copyright (c) 1997-1999 * Silicon Graphics Computer Systems, Inc. diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/std_numeric.h gcc-3.0.1/libstdc++-v3/include/bits/std_numeric.h *** gcc-3.0/libstdc++-v3/include/bits/std_numeric.h Mon May 14 12:49:04 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/std_numeric.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/std_queue.h gcc-3.0.1/libstdc++-v3/include/bits/std_queue.h *** gcc-3.0/libstdc++-v3/include/bits/std_queue.h Mon Jun 11 12:37:49 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/std_queue.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/std_set.h gcc-3.0.1/libstdc++-v3/include/bits/std_set.h *** gcc-3.0/libstdc++-v3/include/bits/std_set.h Mon Feb 19 10:57:40 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/std_set.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/std_sstream.h gcc-3.0.1/libstdc++-v3/include/bits/std_sstream.h *** gcc-3.0/libstdc++-v3/include/bits/std_sstream.h Tue Jun 12 16:07:40 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/std_sstream.h Fri Jul 13 13:55:54 2001 *************** namespace std *** 75,81 **** explicit basic_stringbuf(const __string_type& __str, ios_base::openmode __mode = ios_base::in | ios_base::out) ! : __streambuf_type(), _M_string(__str.c_str()) { _M_stringbuf_init(__mode); } // Get and set: --- 75,81 ---- explicit basic_stringbuf(const __string_type& __str, ios_base::openmode __mode = ios_base::in | ios_base::out) ! : __streambuf_type(), _M_string(__str.data(), __str.size()) { _M_stringbuf_init(__mode); } // Get and set: *************** namespace std *** 84,90 **** { if (_M_mode & ios_base::out) { ! // This is the deal: _M_string.size() is value that // represents the size of the intial string that makes // _M_string, and may not be the correct size of the // current stringbuf internal buffer. --- 84,90 ---- { if (_M_mode & ios_base::out) { ! // This is the deal: _M_string.size() is a value that // represents the size of the intial string that makes // _M_string, and may not be the correct size of the // current stringbuf internal buffer. *************** namespace std *** 116,122 **** // re-allocation of the internal string object, _M_string. _M_buf_size = _M_string.size(); ! // NB: Start ostringstream buffers at 1024 bytes. This is an // experimental value (pronounced "arbitrary" in some of the // hipper english-speaking countries), and can be changed to // suite particular needs. --- 116,122 ---- // re-allocation of the internal string object, _M_string. _M_buf_size = _M_string.size(); ! // NB: Start ostringstream buffers at 512 bytes. This is an // experimental value (pronounced "arbitrary" in some of the // hipper english-speaking countries), and can be changed to // suite particular needs. diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/std_stack.h gcc-3.0.1/libstdc++-v3/include/bits/std_stack.h *** gcc-3.0/libstdc++-v3/include/bits/std_stack.h Mon Feb 19 10:57:41 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/std_stack.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/std_stdexcept.h gcc-3.0.1/libstdc++-v3/include/bits/std_stdexcept.h *** gcc-3.0/libstdc++-v3/include/bits/std_stdexcept.h Tue Feb 27 15:03:59 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/std_stdexcept.h Wed Jul 11 12:37:57 2001 *************** *** 31,36 **** --- 31,43 ---- // ISO C++ 19.1 Exception classes // + /** @file std_stdexcept.h + * The Standard C++ library provides classes to be used to report certain + * errors (17.4.4.8) in C++ programs. In the error model reflected in these + * classes, errors are divided into two broad categories: logic errors and + * runtime errors. + */ + #ifndef _CPP_STDEXCEPT #define _CPP_STDEXCEPT 1 *************** *** 41,112 **** --- 48,145 ---- namespace std { + /** Logic errors represent problems in the internal logic of a program; + * in theory, these are preventable, and even detectable before the + * program runs (e.g., violations of class invariants). + * @brief One of two subclasses of exception. + */ class logic_error : public exception { string _M_msg; public: + /** Takes a character string describing the error. */ explicit logic_error(const string& __arg); virtual ~logic_error() throw(); + /** Returns a C-style character string describing the general cause of + * the current error (the same string passed to the ctor). */ virtual const char* what() const throw(); }; + /** Thrown by the library, or by you, to report domain errors (domain in + * the mathmatical sense). */ class domain_error : public logic_error { public: explicit domain_error(const string& __arg); }; + /** Thrown to report invalid arguments to functions. */ class invalid_argument : public logic_error { public: explicit invalid_argument(const string& __arg); }; + /** Thrown when an object is constructed that would exceed its maximum + * permitted size (e.g., a basic_string instance). */ class length_error : public logic_error { public: explicit length_error(const string& __arg); }; + /** This represents an argument whose value is not within the expected + * range (e.g., boundary checks in basic_string). */ class out_of_range : public logic_error { public: explicit out_of_range(const string& __arg); }; + /** Runtime errors represent problems outside the scope of a program; + * they cannot be easily predicted and can generally only be caught as + * the program executes. + * @brief One of two subclasses of exception. + */ class runtime_error : public exception { string _M_msg; public: + /** Takes a character string describing the error. */ explicit runtime_error(const string& __arg); virtual ~runtime_error() throw(); + /** Returns a C-style character string describing the general cause of + * the current error (the same string passed to the ctor). */ virtual const char* what() const throw(); }; + /** Thrown to indicate range errors in internal computations. */ class range_error : public runtime_error { public: explicit range_error(const string& __arg); }; + /** Thrown to indicate arithmetic overflow. */ class overflow_error : public runtime_error { public: explicit overflow_error(const string& __arg); }; + /** Thrown to indicate arithmetic underflow. */ class underflow_error : public runtime_error { public: diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/std_utility.h gcc-3.0.1/libstdc++-v3/include/bits/std_utility.h *** gcc-3.0/libstdc++-v3/include/bits/std_utility.h Mon May 14 12:49:04 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/std_utility.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/std_vector.h gcc-3.0.1/libstdc++-v3/include/bits/std_vector.h *** gcc-3.0/libstdc++-v3/include/bits/std_vector.h Mon May 14 12:49:04 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/std_vector.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_algo.h gcc-3.0.1/libstdc++-v3/include/bits/stl_algo.h *** gcc-3.0/libstdc++-v3/include/bits/stl_algo.h Mon May 14 12:49:04 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_algo.h Wed Jun 27 10:12:27 2001 *************** *** 1,3 **** --- 1,32 ---- + // Algorithm implimentation -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_algobase.h gcc-3.0.1/libstdc++-v3/include/bits/stl_algobase.h *** gcc-3.0/libstdc++-v3/include/bits/stl_algobase.h Mon May 14 12:49:04 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_algobase.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // Bits and pieces used in algorithms -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_alloc.h gcc-3.0.1/libstdc++-v3/include/bits/stl_alloc.h *** gcc-3.0/libstdc++-v3/include/bits/stl_alloc.h Mon May 14 12:49:04 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_alloc.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // Allocators -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * Copyright (c) 1996-1997 * Silicon Graphics Computer Systems, Inc. diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_bvector.h gcc-3.0.1/libstdc++-v3/include/bits/stl_bvector.h *** gcc-3.0/libstdc++-v3/include/bits/stl_bvector.h Mon May 14 12:49:04 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_bvector.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // bit_vector and vector specialization -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_construct.h gcc-3.0.1/libstdc++-v3/include/bits/stl_construct.h *** gcc-3.0/libstdc++-v3/include/bits/stl_construct.h Mon May 14 12:49:04 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_construct.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // nonstandard construct and destroy functions -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_deque.h gcc-3.0.1/libstdc++-v3/include/bits/stl_deque.h *** gcc-3.0/libstdc++-v3/include/bits/stl_deque.h Mon May 14 12:49:04 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_deque.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // deque implementation -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_function.h gcc-3.0.1/libstdc++-v3/include/bits/stl_function.h *** gcc-3.0/libstdc++-v3/include/bits/stl_function.h Mon Jun 11 12:37:49 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_function.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // Functor implementations -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_heap.h gcc-3.0.1/libstdc++-v3/include/bits/stl_heap.h *** gcc-3.0/libstdc++-v3/include/bits/stl_heap.h Mon May 14 12:49:04 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_heap.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // Heap implementation -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_iterator.h gcc-3.0.1/libstdc++-v3/include/bits/stl_iterator.h *** gcc-3.0/libstdc++-v3/include/bits/stl_iterator.h Mon May 14 12:49:04 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_iterator.h Thu Jul 19 17:14:09 2001 *************** *** 1,3 **** --- 1,32 ---- + // Iterators -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 *************** private: *** 408,414 **** // This iterator adapter is 'normal' in the sense that it does not ! // change the semantics of any of the operators of its itererator // parameter. Its primary purpose is to convert an iterator that is // not a class, e.g. a pointer, into an iterator that is a class. // The _Container parameter exists solely so that different containers --- 437,443 ---- // This iterator adapter is 'normal' in the sense that it does not ! // change the semantics of any of the operators of its iterator // parameter. Its primary purpose is to convert an iterator that is // not a class, e.g. a pointer, into an iterator that is a class. // The _Container parameter exists solely so that different containers *************** operator>=(const __normal_iterator<_Iter *** 535,541 **** template inline __normal_iterator<_Iterator, _Container> ! operator+(__normal_iterator<_Iterator, _Container>::difference_type __n, const __normal_iterator<_Iterator, _Container>& __i) { return __normal_iterator<_Iterator, _Container>(__i.base() + __n); } --- 564,570 ---- template inline __normal_iterator<_Iterator, _Container> ! operator+(typename __normal_iterator<_Iterator, _Container>::difference_type __n, const __normal_iterator<_Iterator, _Container>& __i) { return __normal_iterator<_Iterator, _Container>(__i.base() + __n); } diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_iterator_base_funcs.h gcc-3.0.1/libstdc++-v3/include/bits/stl_iterator_base_funcs.h *** gcc-3.0/libstdc++-v3/include/bits/stl_iterator_base_funcs.h Mon May 14 12:49:04 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_iterator_base_funcs.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // Functions used by iterators -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_iterator_base_types.h gcc-3.0.1/libstdc++-v3/include/bits/stl_iterator_base_types.h *** gcc-3.0/libstdc++-v3/include/bits/stl_iterator_base_types.h Mon May 14 12:49:04 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_iterator_base_types.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // Types used in iterator implementation -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 *************** *** 37,42 **** --- 66,74 ---- // such as front_insert_iterator and istream_iterator. #pragma GCC system_header + + #include // for ptrdiff_t + namespace std { diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_list.h gcc-3.0.1/libstdc++-v3/include/bits/stl_list.h *** gcc-3.0/libstdc++-v3/include/bits/stl_list.h Mon May 14 12:49:04 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_list.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // List implementation -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_map.h gcc-3.0.1/libstdc++-v3/include/bits/stl_map.h *** gcc-3.0/libstdc++-v3/include/bits/stl_map.h Mon May 14 12:49:05 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_map.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // Map implementation -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_multimap.h gcc-3.0.1/libstdc++-v3/include/bits/stl_multimap.h *** gcc-3.0/libstdc++-v3/include/bits/stl_multimap.h Mon May 14 12:49:05 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_multimap.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // Multimap implementation -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_multiset.h gcc-3.0.1/libstdc++-v3/include/bits/stl_multiset.h *** gcc-3.0/libstdc++-v3/include/bits/stl_multiset.h Mon Jun 4 10:52:30 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_multiset.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // Multiset implementation -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_numeric.h gcc-3.0.1/libstdc++-v3/include/bits/stl_numeric.h *** gcc-3.0/libstdc++-v3/include/bits/stl_numeric.h Mon May 14 12:49:05 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_numeric.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // Numeric functions implementation -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_pair.h gcc-3.0.1/libstdc++-v3/include/bits/stl_pair.h *** gcc-3.0/libstdc++-v3/include/bits/stl_pair.h Mon Jun 4 11:05:20 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_pair.h Wed Jul 11 12:37:57 2001 *************** *** 1,3 **** --- 1,32 ---- + // Pair implementation -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 *************** *** 24,31 **** * purpose. It is provided "as is" without express or implied warranty. */ ! /* NOTE: This is an internal header file, included by other STL headers. ! * You should not attempt to use it directly. */ #ifndef __SGI_STL_INTERNAL_PAIR_H --- 53,61 ---- * purpose. It is provided "as is" without express or implied warranty. */ ! /** @file stl_pair.h ! * This is an internal header file, included by other STL headers. You ! * should not attempt to use it directly. */ #ifndef __SGI_STL_INTERNAL_PAIR_H *************** *** 34,64 **** namespace std { template struct pair { ! typedef _T1 first_type; ! typedef _T2 second_type; ! _T1 first; ! _T2 second; #ifdef _GLIBCPP_RESOLVE_LIB_DEFECTS //265. std::pair::pair() effects overly restrictive pair() : first(), second() {} #else pair() : first(_T1()), second(_T2()) {} #endif pair(const _T1& __a, const _T2& __b) : first(__a), second(__b) {} template pair(const pair<_U1, _U2>& __p) : first(__p.first), second(__p.second) {} }; template inline bool operator==(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y) { return __x.first == __y.first && __x.second == __y.second; } template inline bool operator<(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y) { --- 64,101 ---- namespace std { + /// pair holds two objects of arbitrary type. template struct pair { ! typedef _T1 first_type; ///< @c first_type is the first bound type ! typedef _T2 second_type; ///< @c second_type is the second bound type ! _T1 first; ///< @c first is a copy of the first object ! _T2 second; ///< @c second is a copy of the second object #ifdef _GLIBCPP_RESOLVE_LIB_DEFECTS //265. std::pair::pair() effects overly restrictive + /** The default constructor creates @c first and @c second using their + * respective default constructors. */ pair() : first(), second() {} #else pair() : first(_T1()), second(_T2()) {} #endif + /** Two objects may be passed to a @c pair constructor to be copied. */ pair(const _T1& __a, const _T2& __b) : first(__a), second(__b) {} + /** There is also a templated copy ctor for the @c pair class itself. */ template pair(const pair<_U1, _U2>& __p) : first(__p.first), second(__p.second) {} }; + /// Two pairs of the same type are equal iff their members are equal. template inline bool operator==(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y) { return __x.first == __y.first && __x.second == __y.second; } + /// ...put link to onlinedocs here... template inline bool operator<(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y) { *************** inline bool operator<(const pair<_T1, _T *** 66,91 **** --- 103,141 ---- (!(__y.first < __x.first) && __x.second < __y.second); } + /// Uses @c operator== to find the result. template inline bool operator!=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y) { return !(__x == __y); } + /// Uses @c operator< to find the result. template inline bool operator>(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y) { return __y < __x; } + /// Uses @c operator< to find the result. template inline bool operator<=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y) { return !(__y < __x); } + /// Uses @c operator< to find the result. template inline bool operator>=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y) { return !(__x < __y); } + /** + * @brief A convenience wrapper for creating a pair from two objects. + * @param x The first object. + * @param y The second object. + * @return A newly-constructed pair<> object of the appropriate type. + * + * The standard requires that the objects be passed by reference-to-const, + * but LWG issue #181 says they should be passed by const value. + */ template #ifdef _GLIBCPP_RESOLVE_LIB_DEFECTS //181. make_pair() unintended behavior diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_pthread_alloc.h gcc-3.0.1/libstdc++-v3/include/bits/stl_pthread_alloc.h *** gcc-3.0/libstdc++-v3/include/bits/stl_pthread_alloc.h Mon May 14 12:49:05 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_pthread_alloc.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // Wrapper of pthread allocation header -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * Copyright (c) 1996-1997 * Silicon Graphics Computer Systems, Inc. diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_queue.h gcc-3.0.1/libstdc++-v3/include/bits/stl_queue.h *** gcc-3.0/libstdc++-v3/include/bits/stl_queue.h Mon Jun 4 10:36:08 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_queue.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // Queue implementation -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_raw_storage_iter.h gcc-3.0.1/libstdc++-v3/include/bits/stl_raw_storage_iter.h *** gcc-3.0/libstdc++-v3/include/bits/stl_raw_storage_iter.h Mon May 14 12:49:05 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_raw_storage_iter.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_relops.h gcc-3.0.1/libstdc++-v3/include/bits/stl_relops.h *** gcc-3.0/libstdc++-v3/include/bits/stl_relops.h Mon May 14 12:49:05 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_relops.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // std::rel_ops implementation -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_set.h gcc-3.0.1/libstdc++-v3/include/bits/stl_set.h *** gcc-3.0/libstdc++-v3/include/bits/stl_set.h Mon Jun 4 10:52:30 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_set.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // Set implementation -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_stack.h gcc-3.0.1/libstdc++-v3/include/bits/stl_stack.h *** gcc-3.0/libstdc++-v3/include/bits/stl_stack.h Mon May 14 12:49:05 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_stack.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // Stack implementation -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_tempbuf.h gcc-3.0.1/libstdc++-v3/include/bits/stl_tempbuf.h *** gcc-3.0/libstdc++-v3/include/bits/stl_tempbuf.h Mon May 14 12:49:05 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_tempbuf.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // Temporary buffer implementation -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_threads.h gcc-3.0.1/libstdc++-v3/include/bits/stl_threads.h *** gcc-3.0/libstdc++-v3/include/bits/stl_threads.h Wed Jun 13 23:07:12 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_threads.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // Threading support -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * Copyright (c) 1997-1999 * Silicon Graphics Computer Systems, Inc. diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_tree.h gcc-3.0.1/libstdc++-v3/include/bits/stl_tree.h *** gcc-3.0/libstdc++-v3/include/bits/stl_tree.h Mon May 14 12:49:05 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_tree.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // RB tree implementation -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1996,1997 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_uninitialized.h gcc-3.0.1/libstdc++-v3/include/bits/stl_uninitialized.h *** gcc-3.0/libstdc++-v3/include/bits/stl_uninitialized.h Mon May 14 12:49:05 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_uninitialized.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // Raw memory manipulators -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stl_vector.h gcc-3.0.1/libstdc++-v3/include/bits/stl_vector.h *** gcc-3.0/libstdc++-v3/include/bits/stl_vector.h Mon May 14 12:49:05 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stl_vector.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // Vector implementation -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1994 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/streambuf.tcc gcc-3.0.1/libstdc++-v3/include/bits/streambuf.tcc *** gcc-3.0/libstdc++-v3/include/bits/streambuf.tcc Mon May 14 12:49:05 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/streambuf.tcc Thu Jul 19 17:14:09 2001 *************** *** 37,43 **** namespace std { template ! basic_streambuf<_CharT, _Traits>::int_type basic_streambuf<_CharT, _Traits>:: sbumpc() { --- 37,43 ---- namespace std { template ! typename basic_streambuf<_CharT, _Traits>::int_type basic_streambuf<_CharT, _Traits>:: sbumpc() { *************** namespace std { *** 54,60 **** } template ! basic_streambuf<_CharT, _Traits>::int_type basic_streambuf<_CharT, _Traits>:: sputbackc(char_type __c) { --- 54,60 ---- } template ! typename basic_streambuf<_CharT, _Traits>::int_type basic_streambuf<_CharT, _Traits>:: sputbackc(char_type __c) { *************** namespace std { *** 72,78 **** } template ! basic_streambuf<_CharT, _Traits>::int_type basic_streambuf<_CharT, _Traits>:: sungetc() { --- 72,78 ---- } template ! typename basic_streambuf<_CharT, _Traits>::int_type basic_streambuf<_CharT, _Traits>:: sungetc() { *************** namespace std { *** 93,99 **** // buffers will still be valid. (This happens if setp is used to set // the internal buffer to say some externally-allocated sequence.) template ! basic_streambuf<_CharT, _Traits>::int_type basic_streambuf<_CharT, _Traits>:: sputc(char_type __c) { --- 93,99 ---- // buffers will still be valid. (This happens if setp is used to set // the internal buffer to say some externally-allocated sequence.) template ! typename basic_streambuf<_CharT, _Traits>::int_type basic_streambuf<_CharT, _Traits>:: sputc(char_type __c) { diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/stringfwd.h gcc-3.0.1/libstdc++-v3/include/bits/stringfwd.h *** gcc-3.0/libstdc++-v3/include/bits/stringfwd.h Mon May 14 12:49:05 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/stringfwd.h Fri Jul 13 13:55:54 2001 *************** namespace std *** 43,51 **** template struct char_traits; ! template<> class char_traits; #ifdef _GLIBCPP_USE_WCHAR_T ! template<> class char_traits; #endif template --- 43,51 ---- template struct char_traits; ! template<> struct char_traits; #ifdef _GLIBCPP_USE_WCHAR_T ! template<> struct char_traits; #endif template diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/type_traits.h gcc-3.0.1/libstdc++-v3/include/bits/type_traits.h *** gcc-3.0/libstdc++-v3/include/bits/type_traits.h Mon May 14 12:49:05 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/type_traits.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // Type traits implementation -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * * Copyright (c) 1997 diff -Nrc3pad gcc-3.0/libstdc++-v3/include/bits/valarray_meta.h gcc-3.0.1/libstdc++-v3/include/bits/valarray_meta.h *** gcc-3.0/libstdc++-v3/include/bits/valarray_meta.h Mon May 14 12:49:05 2001 --- gcc-3.0.1/libstdc++-v3/include/bits/valarray_meta.h Mon Jul 9 07:57:05 2001 *************** namespace std *** 655,670 **** valarray operator[] (const valarray&) const; valarray operator[] (const valarray&) const; ! _Expr<_UnClos<_Unary_plus,_Expr,_Clos>, value_type> operator+ () const; ! _Expr<_UnClos, value_type> operator- () const; ! _Expr<_UnClos<_Bitwise_not,_Expr,_Clos>, value_type> operator~ () const; ! _Expr<_UnClos, bool> operator! () const; size_t size () const; --- 655,670 ---- valarray operator[] (const valarray&) const; valarray operator[] (const valarray&) const; ! _Expr<_UnClos<_Unary_plus,std::_Expr,_Clos>, value_type> operator+ () const; ! _Expr<_UnClos, value_type> operator- () const; ! _Expr<_UnClos<_Bitwise_not,std::_Expr,_Clos>, value_type> operator~ () const; ! _Expr<_UnClos, bool> operator! () const; size_t size () const; *************** namespace std *** 769,784 **** inline _Expr<_UnClos, bool> _Expr<_Dom,_Tp>::operator! () const { ! typedef _UnClos _Closure; return _Expr<_Closure,_Tp> (_Closure(this->_M_closure)); } #define _DEFINE_EXPR_UNARY_OPERATOR(_Op, _Name) \ template \ ! inline _Expr<_UnClos<_Name,_Expr,_Dom>,_Tp> \ _Expr<_Dom,_Tp>::operator _Op () const \ { \ ! typedef _UnClos<_Name,_Expr,_Dom> _Closure; \ return _Expr<_Closure,_Tp> (_Closure (this->_M_closure)); \ } --- 769,784 ---- inline _Expr<_UnClos, bool> _Expr<_Dom,_Tp>::operator! () const { ! typedef _UnClos _Closure; return _Expr<_Closure,_Tp> (_Closure(this->_M_closure)); } #define _DEFINE_EXPR_UNARY_OPERATOR(_Op, _Name) \ template \ ! inline _Expr<_UnClos<_Name,std::_Expr,_Dom>,_Tp> \ _Expr<_Dom,_Tp>::operator _Op () const \ { \ ! typedef _UnClos<_Name,std::_Expr,_Dom> _Closure; \ return _Expr<_Closure,_Tp> (_Closure (this->_M_closure)); \ } diff -Nrc3pad gcc-3.0/libstdc++-v3/include/ext/hash_map gcc-3.0.1/libstdc++-v3/include/ext/hash_map *** gcc-3.0/libstdc++-v3/include/ext/hash_map Mon May 14 12:49:08 2001 --- gcc-3.0.1/libstdc++-v3/include/ext/hash_map Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // Hashing map implementation -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * Copyright (c) 1996 * Silicon Graphics Computer Systems, Inc. diff -Nrc3pad gcc-3.0/libstdc++-v3/include/ext/hash_set gcc-3.0.1/libstdc++-v3/include/ext/hash_set *** gcc-3.0/libstdc++-v3/include/ext/hash_set Mon May 14 12:49:08 2001 --- gcc-3.0.1/libstdc++-v3/include/ext/hash_set Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // Hashing set implementation -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * Copyright (c) 1996 * Silicon Graphics Computer Systems, Inc. diff -Nrc3pad gcc-3.0/libstdc++-v3/include/ext/rope gcc-3.0.1/libstdc++-v3/include/ext/rope *** gcc-3.0/libstdc++-v3/include/ext/rope Thu Oct 5 04:27:02 2000 --- gcc-3.0.1/libstdc++-v3/include/ext/rope Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // SGI's rope class -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * Copyright (c) 1997 * Silicon Graphics Computer Systems, Inc. diff -Nrc3pad gcc-3.0/libstdc++-v3/include/ext/ropeimpl.h gcc-3.0.1/libstdc++-v3/include/ext/ropeimpl.h *** gcc-3.0/libstdc++-v3/include/ext/ropeimpl.h Mon May 14 12:49:08 2001 --- gcc-3.0.1/libstdc++-v3/include/ext/ropeimpl.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // SGI's rope class implementation -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * Copyright (c) 1997 * Silicon Graphics Computer Systems, Inc. diff -Nrc3pad gcc-3.0/libstdc++-v3/include/ext/slist gcc-3.0.1/libstdc++-v3/include/ext/slist *** gcc-3.0/libstdc++-v3/include/ext/slist Mon May 14 12:49:08 2001 --- gcc-3.0.1/libstdc++-v3/include/ext/slist Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // Singly-linked list implementation -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * Copyright (c) 1997 * Silicon Graphics Computer Systems, Inc. diff -Nrc3pad gcc-3.0/libstdc++-v3/include/ext/stl_hash_fun.h gcc-3.0.1/libstdc++-v3/include/ext/stl_hash_fun.h *** gcc-3.0/libstdc++-v3/include/ext/stl_hash_fun.h Mon May 14 12:49:08 2001 --- gcc-3.0.1/libstdc++-v3/include/ext/stl_hash_fun.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // 'struct hash' from SGI -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * Copyright (c) 1996-1998 * Silicon Graphics Computer Systems, Inc. diff -Nrc3pad gcc-3.0/libstdc++-v3/include/ext/stl_hashtable.h gcc-3.0.1/libstdc++-v3/include/ext/stl_hashtable.h *** gcc-3.0/libstdc++-v3/include/ext/stl_hashtable.h Mon May 14 12:49:08 2001 --- gcc-3.0.1/libstdc++-v3/include/ext/stl_hashtable.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // Hashtable implementation used by containers -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * Copyright (c) 1996,1997 * Silicon Graphics Computer Systems, Inc. diff -Nrc3pad gcc-3.0/libstdc++-v3/include/ext/stl_rope.h gcc-3.0.1/libstdc++-v3/include/ext/stl_rope.h *** gcc-3.0/libstdc++-v3/include/ext/stl_rope.h Mon May 14 12:49:08 2001 --- gcc-3.0.1/libstdc++-v3/include/ext/stl_rope.h Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,32 ---- + // SGI's rope implementation -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * Copyright (c) 1997-1998 * Silicon Graphics Computer Systems, Inc. diff -Nrc3pad gcc-3.0/libstdc++-v3/libio/ChangeLog gcc-3.0.1/libstdc++-v3/libio/ChangeLog *** gcc-3.0/libstdc++-v3/libio/ChangeLog Sun Jun 17 12:41:24 2001 --- gcc-3.0.1/libstdc++-v3/libio/ChangeLog Sun Aug 19 14:08:37 2001 *************** *** 1,3 **** --- 1,11 ---- + 2001-08-19 Release Manager + + * GCC 3.0.1 Released. + + 2001-08-19 Release Manager + + * GCC 3.0.1 Released. + 20010617 Release Manager * GCC 3.0 Released. diff -Nrc3pad gcc-3.0/libstdc++-v3/libio/Makefile.am gcc-3.0.1/libstdc++-v3/libio/Makefile.am *** gcc-3.0/libstdc++-v3/libio/Makefile.am Sat Feb 3 01:01:44 2001 --- gcc-3.0.1/libstdc++-v3/libio/Makefile.am Thu Jul 26 00:52:20 2001 *************** noinst_LTLIBRARIES = *** 32,49 **** endif # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES ! GLIBCPP_INCLUDE_DIR = @GLIBCPP_INCLUDE_DIR@ ! C_INCLUDE_DIR = @C_INCLUDE_DIR@ TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@ - LIBMATH_INCLUDES = @LIBMATH_INCLUDES@ - LIBSUPCXX_INCLUDES = @LIBSUPCXX_INCLUDES@ LIBIO_INCLUDES = @LIBIO_INCLUDES@ - CSHADOW_INCLUDES = @CSHADOW_INCLUDES@ INCLUDES = \ -nostdinc++ \ ! -I$(top_builddir)/include -I$(GLIBCPP_INCLUDE_DIR) \ ! $(LIBIO_INCLUDES) $(TOPLEVEL_INCLUDES) libio_headers = \ libio.h libioP.h iolibio.h --- 32,44 ---- endif # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES ! GLIBCPP_INCLUDES = @GLIBCPP_INCLUDES@ TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@ LIBIO_INCLUDES = @LIBIO_INCLUDES@ INCLUDES = \ -nostdinc++ \ ! $(GLIBCPP_INCLUDES) $(LIBIO_INCLUDES) $(TOPLEVEL_INCLUDES) libio_headers = \ libio.h libioP.h iolibio.h diff -Nrc3pad gcc-3.0/libstdc++-v3/libio/Makefile.in gcc-3.0.1/libstdc++-v3/libio/Makefile.in *** gcc-3.0/libstdc++-v3/libio/Makefile.in Mon May 14 12:49:09 2001 --- gcc-3.0.1/libstdc++-v3/libio/Makefile.in Mon Aug 13 15:22:26 2001 *************** target_alias = @target_alias@ *** 65,86 **** target_triplet = @target@ AR = @AR@ AS = @AS@ CC = @CC@ CPP = @CPP@ CSHADOW_FLAGS = @CSHADOW_FLAGS@ ! CSTD_INCLUDES = @CSTD_INCLUDES@ CXX = @CXX@ CXXCPP = @CXXCPP@ DEBUG_FLAGS = @DEBUG_FLAGS@ DLLTOOL = @DLLTOOL@ EXEEXT = @EXEEXT@ EXTRA_CXX_FLAGS = @EXTRA_CXX_FLAGS@ GCJ = @GCJ@ GCJFLAGS = @GCJFLAGS@ LIBMATHOBJS = @LIBMATHOBJS@ LIBSTRINGOBJS = @LIBSTRINGOBJS@ LIBSUPCXX_PICFLAGS = @LIBSUPCXX_PICFLAGS@ LIBTOOL = @LIBTOOL@ LN_S = @LN_S@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ --- 65,95 ---- target_triplet = @target@ AR = @AR@ AS = @AS@ + ATOMICITY_INC_SRCDIR = @ATOMICITY_INC_SRCDIR@ + BASIC_FILE_H = @BASIC_FILE_H@ CC = @CC@ + CCODECVT_C = @CCODECVT_C@ + CLOCALE_H = @CLOCALE_H@ CPP = @CPP@ CSHADOW_FLAGS = @CSHADOW_FLAGS@ ! CSTDIO_H = @CSTDIO_H@ CXX = @CXX@ CXXCPP = @CXXCPP@ + C_INCLUDE_DIR = @C_INCLUDE_DIR@ DEBUG_FLAGS = @DEBUG_FLAGS@ DLLTOOL = @DLLTOOL@ EXEEXT = @EXEEXT@ EXTRA_CXX_FLAGS = @EXTRA_CXX_FLAGS@ GCJ = @GCJ@ GCJFLAGS = @GCJFLAGS@ + GLIBCPP_IS_CROSS_COMPILING = @GLIBCPP_IS_CROSS_COMPILING@ LIBMATHOBJS = @LIBMATHOBJS@ + LIBMATH_INCLUDES = @LIBMATH_INCLUDES@ LIBSTRINGOBJS = @LIBSTRINGOBJS@ + LIBSUPCXX_INCLUDES = @LIBSUPCXX_INCLUDES@ LIBSUPCXX_PICFLAGS = @LIBSUPCXX_PICFLAGS@ LIBTOOL = @LIBTOOL@ + LIMITS_INC_SRCDIR = @LIMITS_INC_SRCDIR@ LN_S = @LN_S@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ *************** OBJDUMP = @OBJDUMP@ *** 88,93 **** --- 97,103 ---- OBJEXT = @OBJEXT@ OPTIMIZE_CXXFLAGS = @OPTIMIZE_CXXFLAGS@ OPT_LDFLAGS = @OPT_LDFLAGS@ + OS_INC_SRCDIR = @OS_INC_SRCDIR@ PACKAGE = @PACKAGE@ RANLIB = @RANLIB@ SECTION_FLAGS = @SECTION_FLAGS@ *************** glibcpp_basedir = @glibcpp_basedir@ *** 104,109 **** --- 114,120 ---- glibcpp_builddir = @glibcpp_builddir@ glibcpp_prefixdir = @glibcpp_prefixdir@ glibcpp_srcdir = @glibcpp_srcdir@ + glibcpp_thread_h = @glibcpp_thread_h@ glibcpp_toolexecdir = @glibcpp_toolexecdir@ glibcpp_toolexeclibdir = @glibcpp_toolexeclibdir@ gxx_include_dir = @gxx_include_dir@ *************** mkinstalldirs = $(SHELL) $(toplevel_srcd *** 118,132 **** @GLIBCPP_BUILD_LIBIO_FALSE@noinst_LTLIBRARIES = # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES ! GLIBCPP_INCLUDE_DIR = @GLIBCPP_INCLUDE_DIR@ ! C_INCLUDE_DIR = @C_INCLUDE_DIR@ TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@ - LIBMATH_INCLUDES = @LIBMATH_INCLUDES@ - LIBSUPCXX_INCLUDES = @LIBSUPCXX_INCLUDES@ LIBIO_INCLUDES = @LIBIO_INCLUDES@ - CSHADOW_INCLUDES = @CSHADOW_INCLUDES@ ! INCLUDES = -nostdinc++ -I$(top_builddir)/include -I$(GLIBCPP_INCLUDE_DIR) $(LIBIO_INCLUDES) $(TOPLEVEL_INCLUDES) libio_headers = libio.h libioP.h iolibio.h --- 129,139 ---- @GLIBCPP_BUILD_LIBIO_FALSE@noinst_LTLIBRARIES = # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES ! GLIBCPP_INCLUDES = @GLIBCPP_INCLUDES@ TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@ LIBIO_INCLUDES = @LIBIO_INCLUDES@ ! INCLUDES = -nostdinc++ $(GLIBCPP_INCLUDES) $(LIBIO_INCLUDES) $(TOPLEVEL_INCLUDES) libio_headers = libio.h libioP.h iolibio.h diff -Nrc3pad gcc-3.0/libstdc++-v3/libmath/Makefile.am gcc-3.0.1/libstdc++-v3/libmath/Makefile.am *** gcc-3.0/libstdc++-v3/libmath/Makefile.am Sat Feb 3 01:01:44 2001 --- gcc-3.0.1/libstdc++-v3/libmath/Makefile.am Thu Jul 26 11:25:42 2001 *************** *** 1,6 **** ## Makefile for the math subdirectory of the GNU C++ Standard library. ## ! ## Copyright (C) 1997, 1998, 1999, 2000 Cygnus Solutions ## ## This file is part of the libstdc++ version 3 distribution. ## Process this file with automake to produce Makefile.in. --- 1,6 ---- ## Makefile for the math subdirectory of the GNU C++ Standard library. ## ! ## Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc. ## ## This file is part of the libstdc++ version 3 distribution. ## Process this file with automake to produce Makefile.in. *************** mkinstalldirs = $(SHELL) $(toplevel_srcd *** 27,38 **** noinst_LTLIBRARIES = libmath.la ! EXTRA_LONG_DOUBLE_yes = \ ! hypotl.c signbitl.c ! EXTRA_DIST = \ ! hypot.c hypotf.c atan2f.c expf.c \ ! $(EXTRA_LONG_DOUBLE_yes) libmath_la_LIBADD = \ @LIBMATHOBJS@ \ --- 27,35 ---- noinst_LTLIBRARIES = libmath.la ! EXTRA_LONG_DOUBLE_yes = signbitl.c ! EXTRA_DIST = $(EXTRA_LONG_DOUBLE_yes) libmath_la_LIBADD = \ @LIBMATHOBJS@ \ *************** libmath_la_LIBADD = \ *** 40,60 **** libmath_la_DEPENDENCIES = $(libmath_la_LIBADD) ! libmath_la_SOURCES = \ ! signbit.c signbitf.c LINK = $(LIBTOOL) --mode=link "$(CCLD)" $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES - GLIBCPP_INCLUDE_DIR = @GLIBCPP_INCLUDE_DIR@ - C_INCLUDE_DIR = @C_INCLUDE_DIR@ TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@ - LIBMATH_INCLUDES = @LIBMATH_INCLUDES@ - LIBSUPCXX_INCLUDES = @LIBSUPCXX_INCLUDES@ - LIBIO_INCLUDES = @LIBIO_INCLUDES@ - CSHADOW_INCLUDES = @CSHADOW_INCLUDES@ INCLUDES = \ - -I$(GLIBCPP_INCLUDE_DIR) -I$(top_builddir)/include \ $(TOPLEVEL_INCLUDES) --- 37,49 ---- libmath_la_DEPENDENCIES = $(libmath_la_LIBADD) ! libmath_la_SOURCES = signbit.c signbitf.c stubs.c LINK = $(LIBTOOL) --mode=link "$(CCLD)" $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@ INCLUDES = \ $(TOPLEVEL_INCLUDES) diff -Nrc3pad gcc-3.0/libstdc++-v3/libmath/Makefile.in gcc-3.0.1/libstdc++-v3/libmath/Makefile.in *** gcc-3.0/libstdc++-v3/libmath/Makefile.in Mon May 14 12:49:10 2001 --- gcc-3.0.1/libstdc++-v3/libmath/Makefile.in Mon Aug 13 15:22:26 2001 *************** target_alias = @target_alias@ *** 65,86 **** target_triplet = @target@ AR = @AR@ AS = @AS@ CC = @CC@ CPP = @CPP@ CSHADOW_FLAGS = @CSHADOW_FLAGS@ ! CSTD_INCLUDES = @CSTD_INCLUDES@ CXX = @CXX@ CXXCPP = @CXXCPP@ DEBUG_FLAGS = @DEBUG_FLAGS@ DLLTOOL = @DLLTOOL@ EXEEXT = @EXEEXT@ EXTRA_CXX_FLAGS = @EXTRA_CXX_FLAGS@ GCJ = @GCJ@ GCJFLAGS = @GCJFLAGS@ LIBMATHOBJS = @LIBMATHOBJS@ LIBSTRINGOBJS = @LIBSTRINGOBJS@ LIBSUPCXX_PICFLAGS = @LIBSUPCXX_PICFLAGS@ LIBTOOL = @LIBTOOL@ LN_S = @LN_S@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ --- 65,97 ---- target_triplet = @target@ AR = @AR@ AS = @AS@ + ATOMICITY_INC_SRCDIR = @ATOMICITY_INC_SRCDIR@ + BASIC_FILE_H = @BASIC_FILE_H@ CC = @CC@ + CCODECVT_C = @CCODECVT_C@ + CLOCALE_H = @CLOCALE_H@ CPP = @CPP@ CSHADOW_FLAGS = @CSHADOW_FLAGS@ ! CSTDIO_H = @CSTDIO_H@ CXX = @CXX@ CXXCPP = @CXXCPP@ + C_INCLUDE_DIR = @C_INCLUDE_DIR@ DEBUG_FLAGS = @DEBUG_FLAGS@ DLLTOOL = @DLLTOOL@ EXEEXT = @EXEEXT@ EXTRA_CXX_FLAGS = @EXTRA_CXX_FLAGS@ GCJ = @GCJ@ GCJFLAGS = @GCJFLAGS@ + GLIBCPP_INCLUDES = @GLIBCPP_INCLUDES@ + GLIBCPP_IS_CROSS_COMPILING = @GLIBCPP_IS_CROSS_COMPILING@ + LIBIO_INCLUDES = @LIBIO_INCLUDES@ LIBMATHOBJS = @LIBMATHOBJS@ + LIBMATH_INCLUDES = @LIBMATH_INCLUDES@ LIBSTRINGOBJS = @LIBSTRINGOBJS@ + LIBSUPCXX_INCLUDES = @LIBSUPCXX_INCLUDES@ LIBSUPCXX_PICFLAGS = @LIBSUPCXX_PICFLAGS@ LIBTOOL = @LIBTOOL@ + LIMITS_INC_SRCDIR = @LIMITS_INC_SRCDIR@ LN_S = @LN_S@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ *************** OBJDUMP = @OBJDUMP@ *** 88,93 **** --- 99,105 ---- OBJEXT = @OBJEXT@ OPTIMIZE_CXXFLAGS = @OPTIMIZE_CXXFLAGS@ OPT_LDFLAGS = @OPT_LDFLAGS@ + OS_INC_SRCDIR = @OS_INC_SRCDIR@ PACKAGE = @PACKAGE@ RANLIB = @RANLIB@ SECTION_FLAGS = @SECTION_FLAGS@ *************** glibcpp_basedir = @glibcpp_basedir@ *** 104,109 **** --- 116,122 ---- glibcpp_builddir = @glibcpp_builddir@ glibcpp_prefixdir = @glibcpp_prefixdir@ glibcpp_srcdir = @glibcpp_srcdir@ + glibcpp_thread_h = @glibcpp_thread_h@ glibcpp_toolexecdir = @glibcpp_toolexecdir@ glibcpp_toolexeclibdir = @glibcpp_toolexeclibdir@ gxx_include_dir = @gxx_include_dir@ *************** mkinstalldirs = $(SHELL) $(toplevel_srcd *** 117,148 **** noinst_LTLIBRARIES = libmath.la ! EXTRA_LONG_DOUBLE_yes = hypotl.c signbitl.c ! ! ! EXTRA_DIST = hypot.c hypotf.c atan2f.c expf.c $(EXTRA_LONG_DOUBLE_yes) libmath_la_LIBADD = @LIBMATHOBJS@ $(EXTRA_LONG_DOUBLE_$(USE_COMPLEX_LONG_DOUBLE)) libmath_la_DEPENDENCIES = $(libmath_la_LIBADD) ! libmath_la_SOURCES = signbit.c signbitf.c ! LINK = $(LIBTOOL) --mode=link "$(CCLD)" $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES - GLIBCPP_INCLUDE_DIR = @GLIBCPP_INCLUDE_DIR@ - C_INCLUDE_DIR = @C_INCLUDE_DIR@ TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@ - LIBMATH_INCLUDES = @LIBMATH_INCLUDES@ - LIBSUPCXX_INCLUDES = @LIBSUPCXX_INCLUDES@ - LIBIO_INCLUDES = @LIBIO_INCLUDES@ - CSHADOW_INCLUDES = @CSHADOW_INCLUDES@ ! INCLUDES = -I$(GLIBCPP_INCLUDE_DIR) -I$(top_builddir)/include $(TOPLEVEL_INCLUDES) CONFIG_HEADER = ../config.h CONFIG_CLEAN_FILES = --- 130,152 ---- noinst_LTLIBRARIES = libmath.la ! EXTRA_LONG_DOUBLE_yes = signbitl.c + EXTRA_DIST = $(EXTRA_LONG_DOUBLE_yes) libmath_la_LIBADD = @LIBMATHOBJS@ $(EXTRA_LONG_DOUBLE_$(USE_COMPLEX_LONG_DOUBLE)) libmath_la_DEPENDENCIES = $(libmath_la_LIBADD) ! libmath_la_SOURCES = signbit.c signbitf.c stubs.c LINK = $(LIBTOOL) --mode=link "$(CCLD)" $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@ ! INCLUDES = $(TOPLEVEL_INCLUDES) CONFIG_HEADER = ../config.h CONFIG_CLEAN_FILES = *************** CPPFLAGS = @CPPFLAGS@ *** 154,160 **** LDFLAGS = @LDFLAGS@ LIBS = @LIBS@ libmath_la_LDFLAGS = ! libmath_la_OBJECTS = signbit.lo signbitf.lo CFLAGS = @CFLAGS@ COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) --- 158,164 ---- LDFLAGS = @LDFLAGS@ LIBS = @LIBS@ libmath_la_LDFLAGS = ! libmath_la_OBJECTS = signbit.lo signbitf.lo stubs.lo CFLAGS = @CFLAGS@ COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) diff -Nrc3pad gcc-3.0/libstdc++-v3/libmath/atan2f.c gcc-3.0.1/libstdc++-v3/libmath/atan2f.c *** gcc-3.0/libstdc++-v3/libmath/atan2f.c Fri Oct 6 18:01:45 2000 --- gcc-3.0.1/libstdc++-v3/libmath/atan2f.c Wed Dec 31 16:00:00 1969 *************** *** 1,39 **** - /* Compute arc tangent. */ - - /* Copyright (C) 1997-1999 Free Software Foundation, Inc. - - This file is part of the GNU ISO C++ Library. This library is free - software; you can redistribute it and/or modify it under the - terms of the GNU General Public License as published by the - Free Software Foundation; either version 2, or (at your option) - any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this library; see the file COPYING. If not, write to the Free - Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, - USA. - - As a special exception, you may use this file as part of a free software - library without restriction. Specifically, if other files instantiate - templates or use macros or inline functions from this file, or you compile - this file and link it with other files to produce an executable, this - file does not by itself cause the resulting executable to be covered by - the GNU General Public License. This exception does not however - invalidate any other reasons why the executable file might be covered by - the GNU General Public License. */ - - - #include - #include "mathconf.h" - - float - atan2f (float x, float y) - { - /* We use the double version. */ - return atan2 (x, y); - } --- 0 ---- diff -Nrc3pad gcc-3.0/libstdc++-v3/libmath/expf.c gcc-3.0.1/libstdc++-v3/libmath/expf.c *** gcc-3.0/libstdc++-v3/libmath/expf.c Fri Oct 6 18:01:45 2000 --- gcc-3.0.1/libstdc++-v3/libmath/expf.c Wed Dec 31 16:00:00 1969 *************** *** 1,39 **** - /* Compute exponential function. */ - - /* Copyright (C) 1997-1999 Free Software Foundation, Inc. - - This file is part of the GNU ISO C++ Library. This library is free - software; you can redistribute it and/or modify it under the - terms of the GNU General Public License as published by the - Free Software Foundation; either version 2, or (at your option) - any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this library; see the file COPYING. If not, write to the Free - Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, - USA. - - As a special exception, you may use this file as part of a free software - library without restriction. Specifically, if other files instantiate - templates or use macros or inline functions from this file, or you compile - this file and link it with other files to produce an executable, this - file does not by itself cause the resulting executable to be covered by - the GNU General Public License. This exception does not however - invalidate any other reasons why the executable file might be covered by - the GNU General Public License. */ - - - #include - #include "mathconf.h" - - float - expf (float x) - { - /* We use the double version. */ - return exp (x); - } --- 0 ---- diff -Nrc3pad gcc-3.0/libstdc++-v3/libmath/hypot.c gcc-3.0.1/libstdc++-v3/libmath/hypot.c *** gcc-3.0/libstdc++-v3/libmath/hypot.c Fri Oct 6 18:01:45 2000 --- gcc-3.0.1/libstdc++-v3/libmath/hypot.c Wed Dec 31 16:00:00 1969 *************** *** 1,38 **** - /* Compute hypothenuse. */ - - /* Copyright (C) 1997-1999 Free Software Foundation, Inc. - - This file is part of the GNU ISO C++ Library. This library is free - software; you can redistribute it and/or modify it under the - terms of the GNU General Public License as published by the - Free Software Foundation; either version 2, or (at your option) - any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this library; see the file COPYING. If not, write to the Free - Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, - USA. - - As a special exception, you may use this file as part of a free software - library without restriction. Specifically, if other files instantiate - templates or use macros or inline functions from this file, or you compile - this file and link it with other files to produce an executable, this - file does not by itself cause the resulting executable to be covered by - the GNU General Public License. This exception does not however - invalidate any other reasons why the executable file might be covered by - the GNU General Public License. */ - - /* If the platform is so pathetic that is has no hypot function it does - not deserve it better than getting this version. */ - extern double sqrt (double); - - double - hypot (double x, double y) - { - return sqrt (x * x + y * y); - } --- 0 ---- diff -Nrc3pad gcc-3.0/libstdc++-v3/libmath/hypotf.c gcc-3.0.1/libstdc++-v3/libmath/hypotf.c *** gcc-3.0/libstdc++-v3/libmath/hypotf.c Fri Oct 6 18:01:45 2000 --- gcc-3.0.1/libstdc++-v3/libmath/hypotf.c Wed Dec 31 16:00:00 1969 *************** *** 1,48 **** - /* Compute hypothenuse. */ - - /* Copyright (C) 1997-1999 Free Software Foundation, Inc. - - This file is part of the GNU ISO C++ Library. This library is free - software; you can redistribute it and/or modify it under the - terms of the GNU General Public License as published by the - Free Software Foundation; either version 2, or (at your option) - any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this library; see the file COPYING. If not, write to the Free - Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, - USA. - - As a special exception, you may use this file as part of a free software - library without restriction. Specifically, if other files instantiate - templates or use macros or inline functions from this file, or you compile - this file and link it with other files to produce an executable, this - file does not by itself cause the resulting executable to be covered by - the GNU General Public License. This exception does not however - invalidate any other reasons why the executable file might be covered by - the GNU General Public License. */ - - #include - - /* If there is a `double' version use it. Otherwise make it simply and - stupid. */ - extern double hypot (double, double); - extern double sqrt (double); - extern float sqrtf (float); - - float - hypotf (float x, float y) - { - #ifdef HAVE_HYPOT - return hypot (x, y); - #elif HAVE_SQRTF - return sqrtf (x * x + y * y); - #else - return sqrt (x * x + y * y); - #endif - } --- 0 ---- diff -Nrc3pad gcc-3.0/libstdc++-v3/libmath/hypotl.c gcc-3.0.1/libstdc++-v3/libmath/hypotl.c *** gcc-3.0/libstdc++-v3/libmath/hypotl.c Fri Oct 6 18:01:45 2000 --- gcc-3.0.1/libstdc++-v3/libmath/hypotl.c Wed Dec 31 16:00:00 1969 *************** *** 1,37 **** - /* Compute hypothenuse. */ - - /* Copyright (C) 1997-1999 Free Software Foundation, Inc. - - This file is part of the GNU ISO C++ Library. This library is free - software; you can redistribute it and/or modify it under the - terms of the GNU General Public License as published by the - Free Software Foundation; either version 2, or (at your option) - any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this library; see the file COPYING. If not, write to the Free - Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, - USA. - - As a special exception, you may use this file as part of a free software - library without restriction. Specifically, if other files instantiate - templates or use macros or inline functions from this file, or you compile - this file and link it with other files to produce an executable, this - file does not by itself cause the resulting executable to be covered by - the GNU General Public License. This exception does not however - invalidate any other reasons why the executable file might be covered by - the GNU General Public License. */ - - /* The platform supports some long double functions but not hypotl. Blarg. */ - extern long double sqrtl (long double); - - long double - hypotl (long double x, long double y) - { - return sqrtl (x * x + y * y); - } --- 0 ---- diff -Nrc3pad gcc-3.0/libstdc++-v3/libmath/mathconf.h gcc-3.0.1/libstdc++-v3/libmath/mathconf.h *** gcc-3.0/libstdc++-v3/libmath/mathconf.h Sun Feb 25 01:25:42 2001 --- gcc-3.0.1/libstdc++-v3/libmath/mathconf.h Thu Aug 16 05:29:42 2001 *************** *** 1,6 **** /* Configuration data for libmath subpart of libstdc++. */ ! /* Copyright (C) 1997-1999, 2000 Free Software Foundation, Inc. This file is part of the GNU ISO C++ Library. This library is free software; you can redistribute it and/or modify it under the --- 1,6 ---- /* Configuration data for libmath subpart of libstdc++. */ ! /* Copyright (C) 1997-1999, 2000, 2001 Free Software Foundation, Inc. This file is part of the GNU ISO C++ Library. This library is free software; you can redistribute it and/or modify it under the *************** *** 28,50 **** the GNU General Public License. */ ! #include ! #ifdef _GLIBCPP_HAVE_ENDIAN_H # include #else ! # ifdef _GLIBCPP_HAVE_MACHINE_ENDIAN_H # include # else ! # ifdef _GLIBCPP_HAVE_SYS_MACHINE_H # include # else ! # if defined _GLIBCPP_HAVE_SYS_ISA_DEFS_H || defined _GLIBCPP_HAVE_MACHINE_PARAM_H /* This is on Solaris. */ ! # ifdef _GLIBCPP_HAVE_SYS_ISA_DEFS_H # include # endif ! # ifdef _GLIBCPP_HAVE_MACHINE_PARAM_H # include # endif # ifdef _LITTLE_ENDIAN --- 28,53 ---- the GNU General Public License. */ ! #include ! #ifdef HAVE_ENDIAN_H # include #else ! # ifdef HAVE_MACHINE_ENDIAN_H ! # ifdef __OpenBSD__ ! # include ! # endif # include # else ! # ifdef HAVE_SYS_MACHINE_H # include # else ! # if defined HAVE_SYS_ISA_DEFS_H || defined HAVE_MACHINE_PARAM_H /* This is on Solaris. */ ! # ifdef HAVE_SYS_ISA_DEFS_H # include # endif ! # ifdef HAVE_MACHINE_PARAM_H # include # endif # ifdef _LITTLE_ENDIAN *************** typedef int Int32_t __attribute ((mode ( *** 72,78 **** typedef unsigned int U_int64_t __attribute ((mode (DI))); typedef int Int64_t __attribute ((mode (DI))); ! #ifdef _GLIBCPP_HAVE_NAN_H # include #endif --- 75,81 ---- typedef unsigned int U_int64_t __attribute ((mode (DI))); typedef int Int64_t __attribute ((mode (DI))); ! #ifdef HAVE_NAN_H # include #endif *************** typedef int Int64_t __attribute ((mode ( *** 81,95 **** double nan (void); #endif ! #ifdef _GLIBCPP_HAVE_IEEEFP_H # include #endif ! #ifdef _GLIBCPP_HAVE_FP_H # include #endif ! #ifdef _GLIBCPP_HAVE_FLOAT_H # include #endif --- 84,98 ---- double nan (void); #endif ! #ifdef HAVE_IEEEFP_H # include #endif ! #ifdef HAVE_FP_H # include #endif ! #ifdef HAVE_FLOAT_H # include #endif *************** do { \ *** 262,310 **** qw_u.value = (d); \ (msw) = qw_u.parts64.msw; \ } while (0) ! /* Replacement for non-existing float functions. */ ! #if !defined(_GLIBCPP_HAVE_FABSF) && !defined(_GLIBCPP_HAVE___BUILTIN_FABSF) # define fabsf(x) fabs (x) #endif ! #if !defined(_GLIBCPP_HAVE_COSF) && !defined(_GLIBCPP_HAVE___BUILTIN_COSF) # define cosf(x) cos (x) #endif ! #ifndef _GLIBCPP_HAVE_COSHF # define coshf(x) cosh (x) #endif ! #ifndef _GLIBCPP_HAVE_EXPF # define expf(x) expf (x) #endif ! #ifndef _GLIBCPP_HAVE_LOGF # define logf(x) log(x) #endif ! #ifndef _GLIBCPP_HAVE_LOG10F # define log10f(x) log10 (x) #endif ! #ifndef _GLIBCPP_HAVE_POWF # define powf(x, y) pow (x, y) #endif ! #if !defined(_GLIBCPP_HAVE_SINF) && !defined(_GLIBCPP_HAVE___BUILTIN_SINF) # define sinf(x) sin (x) #endif ! #ifndef _GLIBCPP_HAVE_SINHF # define sinhf(x) sinh (x) #endif ! #if !defined(_GLIBCPP_HAVE_SQRTF) && !defined(_GLIBCPP_HAVE___BUILTIN_SQRTF) # define sqrtf(x) sqrt (x) #endif ! #ifndef _GLIBCPP_HAVE_TANF # define tanf(x) tan (x) #endif ! #ifndef _GLIBCPP_HAVE_TANHF # define tanhf(x) tanh (x) #endif ! #ifndef _GLIBCPP_HAVE_STRTOF # define strtof(s, e) strtod (s, e) #endif #ifdef __cplusplus } #endif --- 265,314 ---- qw_u.value = (d); \ (msw) = qw_u.parts64.msw; \ } while (0) ! /* Replacement for non-existing float functions. */ ! #if !defined(HAVE_FABSF) && !defined(HAVE___BUILTIN_FABSF) # define fabsf(x) fabs (x) #endif ! #if !defined(HAVE_COSF) && !defined(HAVE___BUILTIN_COSF) # define cosf(x) cos (x) #endif ! #ifndef HAVE_COSHF # define coshf(x) cosh (x) #endif ! #ifndef HAVE_EXPF # define expf(x) expf (x) #endif ! #ifndef HAVE_LOGF # define logf(x) log(x) #endif ! #ifndef HAVE_LOG10F # define log10f(x) log10 (x) #endif ! #ifndef HAVE_POWF # define powf(x, y) pow (x, y) #endif ! #if !defined(HAVE_SINF) && !defined(HAVE___BUILTIN_SINF) # define sinf(x) sin (x) #endif ! #ifndef HAVE_SINHF # define sinhf(x) sinh (x) #endif ! #if !defined(HAVE_SQRTF) && !defined(HAVE___BUILTIN_SQRTF) # define sqrtf(x) sqrt (x) #endif ! #ifndef HAVE_TANF # define tanf(x) tan (x) #endif ! #ifndef HAVE_TANHF # define tanhf(x) tanh (x) #endif ! #ifndef HAVE_STRTOF # define strtof(s, e) strtod (s, e) #endif #ifdef __cplusplus } #endif + diff -Nrc3pad gcc-3.0/libstdc++-v3/libmath/stubs.c gcc-3.0.1/libstdc++-v3/libmath/stubs.c *** gcc-3.0/libstdc++-v3/libmath/stubs.c Wed Dec 31 16:00:00 1969 --- gcc-3.0.1/libstdc++-v3/libmath/stubs.c Mon Aug 13 23:50:24 2001 *************** *** 0 **** --- 1,271 ---- + /* Stub definitions for libmath subpart of libstdc++. */ + + /* Copyright (C) 2001 Free Software Foundation, Inc. + + This file is part of the GNU ISO C++ Library. This library is free + software; you can redistribute it and/or modify it under the + terms of the GNU General Public License as published by the + Free Software Foundation; either version 2, or (at your option) + any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this library; see the file COPYING. If not, write to the Free + Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + USA. + + As a special exception, you may use this file as part of a free software + library without restriction. Specifically, if other files instantiate + templates or use macros or inline functions from this file, or you compile + this file and link it with other files to produce an executable, this + file does not by itself cause the resulting executable to be covered by + the GNU General Public License. This exception does not however + invalidate any other reasons why the executable file might be covered by + the GNU General Public License. */ + + #include + #include "config.h" + + /* For targets which do not have support for long double versions, + we use the crude approximation. We'll do better later. */ + + + #ifndef HAVE_ATAN2F + float + atan2f(float x, float y) + { + return (float) atan2(x, y); + } + #endif + + #ifndef HAVE_ATAN2L + long double + atan2l(long double x, long double y) + { + return atan2((double) x, (double) y); + } + #endif + + + #if !defined(HAVE_COSF) && !defined(HAVE___BUILTIN_COSF) + float + cosf(float x) + { + return (float) cos(x); + } + #endif + + #ifndef HAVE_COSL + long double + cosl(long double x) + { + return cos((double) x); + } + #endif + + + #ifndef HAVE_COSHF + float + coshf(float x) + { + return (float) cosh(x); + } + #endif + + #ifndef HAVE_COSHL + long double + coshl(long double x) + { + return cosh((double) x); + } + #endif + + + #ifndef HAVE_EXPF + float + expf(float x) + { + return (float) exp(x); + } + #endif + + #ifndef HAVE_EXPL + long double + expl(long double x) + { + return exp((double) x); + } + #endif + + + /* Compute the hypothenuse of a right triangle with side x and y. */ + #ifndef HAVE_HYPOTF + float + hypotf(float x, float y) + { + float s = fabsf(x) + fabsf(y); + x /= s; y /= s; + return s * sqrtf(x * x + y * y); + } + #endif + + #ifndef HAVE_HYPOT + double + hypot(double x, double y) + { + double s = fabs(x) + fabs(y); + x /= s; y /= s; + return s * sqrt(x * x + y * y); + } + #endif + + #ifndef HAVE_HYPOTL + long double + hypotl(long double x, long double y) + { + long double s = fabsl(x) + fabsl(y); + x /= s; y /= s; + return s * sqrtl(x * x + y * y); + } + #endif + + + + #ifndef HAVE_LOGF + float + logf(float x) + { + return (float) log(x); + } + #endif + + #ifndef HAVE_LOGL + long double + logl(long double x) + { + return log((double) x); + } + #endif + + + #ifndef HAVE_LOG10F + float + log10f(float x) + { + return (float) log10(x); + } + #endif + + #ifndef HAVE_LOG10L + long double + log10l(long double x) + { + return log10((double) x); + } + #endif + + + #ifndef HAVE_POWF + float + powf(float x, float y) + { + return (float) pow(x, y); + } + #endif + + #ifndef HAVE_POWL + long double + powl(long double x, long double y) + { + return pow((double) x, (double) y); + } + #endif + + + #if !defined(HAVE_SINF) && !defined(HAVE___BUILTIN_SINF) + float + sinf(float x) + { + return (float) sin(x); + } + #endif + + #ifndef HAVE_SINL + long double + sinl(long double x) + { + return sin((double) x); + } + #endif + + + #ifndef HAVE_SINHF + float + sinhf(float x) + { + return (float) sinh(x); + } + #endif + + #ifndef HAVE_SINHL + long double + sinhl(long double x) + { + return sinh((double) x); + } + #endif + + + #ifndef HAVE_SQRTF + float + sqrtf(float x) + { + return (float) sqrt(x); + } + #endif + + #ifndef HAVE_SQRTL + long double + sqrtl(long double x) + { + return sqrt((double) x); + } + #endif + + + #ifndef HAVE_TANF + float + tanf(float x) + { + return (float) tan(x); + } + #endif + + #ifndef HAVE_TANL + long double + tanl(long double x) + { + return tan((double) x); + } + #endif + + + #ifndef HAVE_TANHF + float + tanhf(float x) + { + return (float) tanh(x); + } + #endif + + #ifndef HAVE_TANHL + long double + tanhl(long double x) + { + return tanh((double) x); + } + #endif diff -Nrc3pad gcc-3.0/libstdc++-v3/libsupc++/Makefile.am gcc-3.0.1/libstdc++-v3/libsupc++/Makefile.am *** gcc-3.0/libstdc++-v3/libsupc++/Makefile.am Sun Jun 3 19:29:37 2001 --- gcc-3.0.1/libstdc++-v3/libsupc++/Makefile.am Thu Jul 26 00:52:21 2001 *************** WARN_CXXFLAGS = \ *** 55,72 **** @WARN_FLAGS@ $(WERROR) -fdiagnostics-show-location=once # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES ! GLIBCPP_INCLUDE_DIR = @GLIBCPP_INCLUDE_DIR@ ! C_INCLUDE_DIR = @C_INCLUDE_DIR@ ! CSTD_INCLUDES = @CSTD_INCLUDES@ ! LIBMATH_INCLUDES = @LIBMATH_INCLUDES@ LIBSUPCXX_INCLUDES = @LIBSUPCXX_INCLUDES@ - LIBIO_INCLUDES = @LIBIO_INCLUDES@ - TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@ INCLUDES = \ -I$(toplevel_srcdir)/gcc -I$(toplevel_srcdir)/include \ ! -I$(GLIBCPP_INCLUDE_DIR) $(CSTD_INCLUDES) -I$(top_builddir)/include \ ! $(LIBSUPCXX_INCLUDES) headers = \ exception new typeinfo cxxabi.h exception_defines.h --- 55,66 ---- @WARN_FLAGS@ $(WERROR) -fdiagnostics-show-location=once # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES ! GLIBCPP_INCLUDES = @GLIBCPP_INCLUDES@ LIBSUPCXX_INCLUDES = @LIBSUPCXX_INCLUDES@ INCLUDES = \ -I$(toplevel_srcdir)/gcc -I$(toplevel_srcdir)/include \ ! $(GLIBCPP_INCLUDES) $(LIBSUPCXX_INCLUDES) headers = \ exception new typeinfo cxxabi.h exception_defines.h diff -Nrc3pad gcc-3.0/libstdc++-v3/libsupc++/Makefile.in gcc-3.0.1/libstdc++-v3/libsupc++/Makefile.in *** gcc-3.0/libstdc++-v3/libsupc++/Makefile.in Sun Jun 3 19:29:37 2001 --- gcc-3.0.1/libstdc++-v3/libsupc++/Makefile.in Mon Aug 13 15:22:26 2001 *************** target_alias = @target_alias@ *** 65,95 **** --- 65,107 ---- target_triplet = @target@ AR = @AR@ AS = @AS@ + ATOMICITY_INC_SRCDIR = @ATOMICITY_INC_SRCDIR@ + BASIC_FILE_H = @BASIC_FILE_H@ CC = @CC@ + CCODECVT_C = @CCODECVT_C@ + CLOCALE_H = @CLOCALE_H@ CPP = @CPP@ CSHADOW_FLAGS = @CSHADOW_FLAGS@ + CSTDIO_H = @CSTDIO_H@ CXXCPP = @CXXCPP@ + C_INCLUDE_DIR = @C_INCLUDE_DIR@ DEBUG_FLAGS = @DEBUG_FLAGS@ DLLTOOL = @DLLTOOL@ EXEEXT = @EXEEXT@ EXTRA_CXX_FLAGS = @EXTRA_CXX_FLAGS@ GCJ = @GCJ@ GCJFLAGS = @GCJFLAGS@ + GLIBCPP_IS_CROSS_COMPILING = @GLIBCPP_IS_CROSS_COMPILING@ + LIBIO_INCLUDES = @LIBIO_INCLUDES@ LIBMATHOBJS = @LIBMATHOBJS@ + LIBMATH_INCLUDES = @LIBMATH_INCLUDES@ LIBSTRINGOBJS = @LIBSTRINGOBJS@ LIBSUPCXX_PICFLAGS = @LIBSUPCXX_PICFLAGS@ LIBTOOL = @LIBTOOL@ + LIMITS_INC_SRCDIR = @LIMITS_INC_SRCDIR@ LN_S = @LN_S@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OPT_LDFLAGS = @OPT_LDFLAGS@ + OS_INC_SRCDIR = @OS_INC_SRCDIR@ PACKAGE = @PACKAGE@ RANLIB = @RANLIB@ SECTION_FLAGS = @SECTION_FLAGS@ SECTION_LDFLAGS = @SECTION_LDFLAGS@ STRIP = @STRIP@ + TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@ USE_COMPLEX_LONG_DOUBLE = @USE_COMPLEX_LONG_DOUBLE@ VERSION = @VERSION@ WARN_FLAGS = @WARN_FLAGS@ *************** glibcpp_basedir = @glibcpp_basedir@ *** 101,106 **** --- 113,119 ---- glibcpp_builddir = @glibcpp_builddir@ glibcpp_prefixdir = @glibcpp_prefixdir@ glibcpp_srcdir = @glibcpp_srcdir@ + glibcpp_thread_h = @glibcpp_thread_h@ glibcpp_toolexecdir = @glibcpp_toolexecdir@ glibcpp_toolexeclibdir = @glibcpp_toolexeclibdir@ gxx_include_dir = @gxx_include_dir@ *************** WARN_CXXFLAGS = @WARN_FLAGS@ $(WERROR) *** 140,154 **** # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES ! GLIBCPP_INCLUDE_DIR = @GLIBCPP_INCLUDE_DIR@ ! C_INCLUDE_DIR = @C_INCLUDE_DIR@ ! CSTD_INCLUDES = @CSTD_INCLUDES@ ! LIBMATH_INCLUDES = @LIBMATH_INCLUDES@ LIBSUPCXX_INCLUDES = @LIBSUPCXX_INCLUDES@ - LIBIO_INCLUDES = @LIBIO_INCLUDES@ - TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@ ! INCLUDES = -I$(toplevel_srcdir)/gcc -I$(toplevel_srcdir)/include -I$(GLIBCPP_INCLUDE_DIR) $(CSTD_INCLUDES) -I$(top_builddir)/include $(LIBSUPCXX_INCLUDES) headers = exception new typeinfo cxxabi.h exception_defines.h --- 153,162 ---- # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES ! GLIBCPP_INCLUDES = @GLIBCPP_INCLUDES@ LIBSUPCXX_INCLUDES = @LIBSUPCXX_INCLUDES@ ! INCLUDES = -I$(toplevel_srcdir)/gcc -I$(toplevel_srcdir)/include $(GLIBCPP_INCLUDES) $(LIBSUPCXX_INCLUDES) headers = exception new typeinfo cxxabi.h exception_defines.h diff -Nrc3pad gcc-3.0/libstdc++-v3/libsupc++/exception gcc-3.0.1/libstdc++-v3/libsupc++/exception *** gcc-3.0/libstdc++-v3/libsupc++/exception Sun May 13 00:10:26 2001 --- gcc-3.0.1/libstdc++-v3/libsupc++/exception Wed Jul 11 12:37:58 2001 *************** *** 28,33 **** --- 28,38 ---- // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. + /** @file exception + * This header defines several types and functions relating to the + * handling of exceptions in a C++ program. + */ + #ifndef __EXCEPTION__ #define __EXCEPTION__ *************** extern "C++" { *** 35,48 **** --- 40,63 ---- namespace std { + /** This is the base class for all exceptions thrown by the standard + * library, and by certain language expressions. You are free to derive + * your own %exception classes, or use a different hierarchy, or to + * throw non-class data (e.g., fundamental types). + * @brief Base class for all library exceptions. + */ class exception { public: exception() throw() { } virtual ~exception() throw(); + /** Returns a C-style character string describing the general cause + * of the current error. */ virtual const char* what() const throw(); }; + /** If an %exception is thrown which is not listed in a function's + * %exception specification, one of these may be thrown. */ class bad_exception : public exception { public: *************** namespace std *** 50,64 **** --- 65,97 ---- virtual ~bad_exception() throw(); }; + /// If you write a replacement %terminate handler, it must be of this type. typedef void (*terminate_handler) (); + /// If you write a replacement %unexpected handler, it must be of this type. typedef void (*unexpected_handler) (); + /// Takes a new handler function as an argument, returns the old function. terminate_handler set_terminate(terminate_handler) throw(); + /** The runtime will call this function if %exception handling must be + * abandoned for any reason. */ void terminate() __attribute__ ((__noreturn__)); + /// Takes a new handler function as an argument, returns the old function. unexpected_handler set_unexpected(unexpected_handler) throw(); + /** The runtime will call this function if an %exception is thrown which + * violates the function's %exception specification. */ void unexpected() __attribute__ ((__noreturn__)); + /** [18.6.4]/1: "Returns true after completing evaluation of a + * throw-expression until either completing initialization of the + * exception-declaration in the matching handler or entering @c unexpected() + * due to the throw; or after entering @c terminate() for any reason + * other than an explicit call to @c terminate(). [Note: This includes + * stack unwinding [15.2]. end note]" + * + * 2: "When @c uncaught_exception() is true, throwing an %exception can + * result in a call of @c terminate() (15.5.1)." + */ bool uncaught_exception() throw(); } // namespace std diff -Nrc3pad gcc-3.0/libstdc++-v3/libsupc++/new gcc-3.0.1/libstdc++-v3/libsupc++/new *** gcc-3.0/libstdc++-v3/libsupc++/new Sun May 13 00:10:26 2001 --- gcc-3.0.1/libstdc++-v3/libsupc++/new Wed Jul 11 12:37:58 2001 *************** *** 28,33 **** --- 28,39 ---- // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. + /** @file new + * This header defines several functions to manage dynamic memory and + * handling memory allocation errors; see + * http://gcc.gnu.org/onlinedocs/libstdc++/18_support/howto.html#4 for more. + */ + #ifndef __NEW__ #define __NEW__ *************** extern "C++" { *** 38,43 **** --- 44,51 ---- namespace std { + /** @c bad_alloc (or classes derived from it) is used to report allocation + * errors from the throwing forms of @c new. */ class bad_alloc : public exception { public: *************** namespace std *** 47,57 **** struct nothrow_t { }; extern const nothrow_t nothrow; typedef void (*new_handler)(); new_handler set_new_handler(new_handler); } // namespace std ! // Replaceable signatures. void *operator new(std::size_t) throw (std::bad_alloc); void *operator new[](std::size_t) throw (std::bad_alloc); void operator delete(void *) throw(); --- 55,78 ---- struct nothrow_t { }; extern const nothrow_t nothrow; + /** If you write your own error handler to be called by @c new, it must + * be of this type. */ typedef void (*new_handler)(); + /// Takes a replacement handler as the argument, returns the previous handler. new_handler set_new_handler(new_handler); } // namespace std ! //@{ ! /** These are replaceable signatures: ! * - normal single new and delete (no arguments, throw @c bad_alloc on error) ! * - normal array new and delete (same) ! * - @c nothrow single new and delete (take a @c nothrow argument, return ! * @c NULL on error) ! * - @c nothrow array new and delete (same) ! * ! * Placement new and delete signatures (take a memory address argument, ! * does nothing) may not be replaced by a user's program. ! */ void *operator new(std::size_t) throw (std::bad_alloc); void *operator new[](std::size_t) throw (std::bad_alloc); void operator delete(void *) throw(); *************** void operator delete[](void *, const std *** 64,69 **** --- 85,91 ---- // Default placement versions of operator new. inline void *operator new(std::size_t, void *place) throw() { return place; } inline void *operator new[](std::size_t, void *place) throw() { return place; } + //@} } // extern "C++" #endif diff -Nrc3pad gcc-3.0/libstdc++-v3/libsupc++/typeinfo gcc-3.0.1/libstdc++-v3/libsupc++/typeinfo *** gcc-3.0/libstdc++-v3/libsupc++/typeinfo Sun May 13 00:10:26 2001 --- gcc-3.0.1/libstdc++-v3/libsupc++/typeinfo Wed Jul 11 12:37:58 2001 *************** *** 27,32 **** --- 27,36 ---- // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. + /** @file typeinfo + * This header provides RTTI support. + */ + #ifndef __TYPEINFO__ #define __TYPEINFO__ *************** namespace __cxxabiv1 *** 49,65 **** namespace std { class type_info { public: ! // Destructor. Being the first non-inline virtual function, this ! // controls in which translation unit the vtable is emitted. The ! // compiler makes use of that information to know where to emit ! // the runtime-mandated type_info structures in the new-abi. virtual ~type_info(); private: ! // Assigning type_info is not supported. made private. type_info& operator=(const type_info&); type_info(const type_info&); --- 53,72 ---- namespace std { + /** The @c type_info class describes type information generated by + * an implementation. + * @brief Used in RTTI. */ class type_info { public: ! /** Destructor. Being the first non-inline virtual function, this ! * controls in which translation unit the vtable is emitted. The ! * compiler makes use of that information to know where to emit ! * the runtime-mandated type_info structures in the new-abi. */ virtual ~type_info(); private: ! /// Assigning type_info is not supported. Made private. type_info& operator=(const type_info&); type_info(const type_info&); *************** namespace std *** 71,76 **** --- 78,85 ---- public: // the public interface + /** Returns an \e implementation-defined byte string; this is not + * portable between compilers! */ const char* name() const { return __name; } *************** namespace std *** 81,86 **** --- 90,97 ---- // type. Uniqueness must use the _name value, not object address. bool operator==(const type_info& __arg) const; #else + /** Returns true if @c *this preceeds @c __arg in the implementation's + * collation order. */ // In new abi we can rely on type_info's NTBS being unique, // and therefore address comparisons are sufficient. bool before(const type_info& __arg) const *************** namespace std *** 112,117 **** --- 123,130 ---- void **__obj_ptr) const; }; + /** If you attempt an invalid @c dynamic_cast expression, an instance of + * this class (or something derived from this class) is thrown. */ class bad_cast : public exception { public: *************** namespace std *** 119,124 **** --- 132,138 ---- virtual ~bad_cast() throw(); }; + /** If you use a NULL pointer in a @c typeid expression, this is thrown. */ class bad_typeid : public exception { public: diff -Nrc3pad gcc-3.0/libstdc++-v3/mkcheck.in gcc-3.0.1/libstdc++-v3/mkcheck.in *** gcc-3.0/libstdc++-v3/mkcheck.in Tue May 22 11:56:11 2001 --- gcc-3.0.1/libstdc++-v3/mkcheck.in Fri Jul 13 13:55:54 2001 *************** TEST_TIME_END=$($TIMER_COMMAND) *** 436,442 **** # grep can count faster than we can... total_failures=`expr ${shared_fail} + ${static_fail}` total_successes=`expr ${shared_pass} + ${static_pass}` ! resultstext="pass/fail results: ${shared_pass}/${shared_fail} shared + ${static_pass}/${static_fail} static = ${total_successes}/${total_failures} total" if [ $total_failures -eq 0 ]; then resultstext="${resultstext}, WIN WIN" fi --- 436,442 ---- # grep can count faster than we can... total_failures=`expr ${shared_fail} + ${static_fail}` total_successes=`expr ${shared_pass} + ${static_pass}` ! resultstext="pass/fail results: ${static_pass}/${static_fail} static + ${shared_pass}/${shared_fail} shared = ${total_successes}/${total_failures} total" if [ $total_failures -eq 0 ]; then resultstext="${resultstext}, WIN WIN" fi diff -Nrc3pad gcc-3.0/libstdc++-v3/mknumeric_limits gcc-3.0.1/libstdc++-v3/mknumeric_limits *** gcc-3.0/libstdc++-v3/mknumeric_limits Fri May 25 15:18:37 2001 --- gcc-3.0.1/libstdc++-v3/mknumeric_limits Thu Jul 26 00:52:19 2001 *************** CC=${CC="$BUILD_DIR/../../gcc/xgcc -B$BU *** 54,60 **** cat < $OUT_H-t // The template and inlines for the -*- C++ -*- numeric_limits classes. ! // Copyright (C) 1999, 2000 Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the --- 54,60 ---- cat < $OUT_H-t // The template and inlines for the -*- C++ -*- numeric_limits classes. ! // Copyright (C) 1999-2001 Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the *************** EOF *** 165,174 **** # Must turn off exceptions, because the C++ exception handling support # routines have not been built yet. ! echo "$CC -I. $CPPFLAGS -I$BUILD_DIR/include -DHAVE_CONFIG_H -fno-exceptions \ -o $BUILD_DIR/src/gen-num-limits $SRC_DIR/src/gen-num-limits.cc" ! { $CC -I. $CPPFLAGS -I$BUILD_DIR/include -DHAVE_CONFIG_H -fno-exceptions \ -o "$BUILD_DIR/src/gen-num-limits" "$SRC_DIR/src/gen-num-limits.cc" } || { echo "gen-num-limits failed to build, exiting." --- 165,174 ---- # Must turn off exceptions, because the C++ exception handling support # routines have not been built yet. ! echo "$CC -I$BUILD_DIR -fno-exceptions \ -o $BUILD_DIR/src/gen-num-limits $SRC_DIR/src/gen-num-limits.cc" ! { $CC -I$BUILD_DIR -fno-exceptions \ -o "$BUILD_DIR/src/gen-num-limits" "$SRC_DIR/src/gen-num-limits.cc" } || { echo "gen-num-limits failed to build, exiting." diff -Nrc3pad gcc-3.0/libstdc++-v3/porting.texi gcc-3.0.1/libstdc++-v3/porting.texi *** gcc-3.0/libstdc++-v3/porting.texi Tue Jun 12 16:10:00 2001 --- gcc-3.0.1/libstdc++-v3/porting.texi Mon Aug 13 15:22:25 2001 *************** Here are the primary steps required to p *** 74,79 **** --- 74,80 ---- * Operating system:: Configuring for your operating system. * Character types:: Implementing character classification. * Thread safety:: Implementing atomic operations. + * Numeric limits:: Implementing numeric limits. * Libtool:: Using libtool. * GNU Free Documentation License:: How you can copy and share this manual. @end menu *************** __atomic_add (_Atomic_word* __mem, int _ *** 435,440 **** --- 436,466 ---- *__mem += __val; @} @end example + + @c --------------------------------------------------------------------- + @c Numeric limits + @c --------------------------------------------------------------------- + + @node Numeric limits + @chapter Numeric limits + + The C++ library requires information about the fundamental data types, + such as the minimum and maximum representable values of each type. + You can define each of these values individually, but it is usually + easiest just to indicate how many bits are used in each of the data + types and let the library do the rest. For information about the + macros to define, see the top of @file{include/bits/std_limits.h}. + + If you need to define any macros, you can do so in + @file{os_defines.h}. However, if all operating systems for your CPU + are likely to use the same values, you can provide a CPU-specific file + instead so that you do not have to provide the same definitions for + each operating system. To take that approach, create a new file + called @file{limits.h} in your CPU configuration directory (e.g., + @file{config/cpu/i386/bits}) and then modify @file{configure.target} + so that @code{LIMITSH} is set to the CPU directory (e.g., + @file{config/cpu/i386}). Note that @code{LIMITSH} should not include + the @samp{bits} part of the directory name. @c --------------------------------------------------------------------- @c Libtool diff -Nrc3pad gcc-3.0/libstdc++-v3/src/Makefile.am gcc-3.0.1/libstdc++-v3/src/Makefile.am *** gcc-3.0/libstdc++-v3/src/Makefile.am Fri Jun 8 13:09:30 2001 --- gcc-3.0.1/libstdc++-v3/src/Makefile.am Tue Aug 14 14:10:06 2001 *************** *** 21,27 **** ## Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, ## USA. ! ## $Id: Makefile.am,v 1.71.2.8 2001/06/08 20:09:30 ljrittle Exp $ AUTOMAKE_OPTIONS = 1.3 gnits MAINT_CHARSET = latin1 --- 21,27 ---- ## Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, ## USA. ! ## $Id: Makefile.am,v 1.71.2.12 2001/08/14 21:10:06 bkoz Exp $ AUTOMAKE_OPTIONS = 1.3 gnits MAINT_CHARSET = latin1 *************** WARN_CXXFLAGS = \ *** 49,57 **** @WARN_FLAGS@ $(WERROR) -fdiagnostics-show-location=once # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES ! GLIBCPP_INCLUDE_DIR = @GLIBCPP_INCLUDE_DIR@ ! C_INCLUDE_DIR = @C_INCLUDE_DIR@ ! CSTD_INCLUDES = @CSTD_INCLUDES@ LIBMATH_INCLUDES = @LIBMATH_INCLUDES@ LIBSUPCXX_INCLUDES = @LIBSUPCXX_INCLUDES@ LIBIO_INCLUDES = @LIBIO_INCLUDES@ --- 49,55 ---- @WARN_FLAGS@ $(WERROR) -fdiagnostics-show-location=once # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES ! GLIBCPP_INCLUDES = @GLIBCPP_INCLUDES@ LIBMATH_INCLUDES = @LIBMATH_INCLUDES@ LIBSUPCXX_INCLUDES = @LIBSUPCXX_INCLUDES@ LIBIO_INCLUDES = @LIBIO_INCLUDES@ *************** TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@ *** 59,180 **** INCLUDES = \ -nostdinc++ \ ! -I$(GLIBCPP_INCLUDE_DIR) $(CSTD_INCLUDES) -I$(top_builddir)/include \ $(LIBSUPCXX_INCLUDES) $(LIBIO_INCLUDES) $(LIBMATH_INCLUDES) \ $(TOPLEVEL_INCLUDES) - base_headers = \ - bits/cpp_type_traits.h bits/char_traits.h bits/codecvt.h \ - bits/stringfwd.h bits/std_string.h bits/basic_string.h \ - bits/basic_string.tcc \ - bits/generic_shadow.h bits/std_utility.h \ - bits/std_complex.h \ - bits/valarray_array.h bits/valarray_array.tcc bits/valarray_meta.h \ - bits/std_valarray.h bits/mask_array.h bits/slice.h bits/slice_array.h \ - bits/gslice.h bits/gslice_array.h bits/indirect_array.h \ - bits/std_fstream.h bits/std_iomanip.h \ - bits/ios_base.h bits/fpos.h bits/basic_ios.h bits/basic_ios.tcc \ - bits/std_ios.h bits/std_iosfwd.h bits/std_iostream.h \ - bits/std_istream.h bits/istream.tcc bits/std_locale.h \ - bits/fstream.tcc bits/ostream.tcc bits/sbuf_iter.h bits/sstream.tcc \ - bits/std_ostream.h bits/std_sstream.h bits/std_streambuf.h \ - bits/streambuf.tcc bits/basic_file.h \ - bits/locale_facets.h bits/locale_facets.tcc bits/localefwd.h \ - bits/stl_pthread_alloc.h bits/pthread_allocimpl.h \ - bits/stl_threads.h \ - bits/stl_iterator_base_types.h bits/stl_iterator_base_funcs.h \ - bits/std_bitset.h bits/std_deque.h bits/std_functional.h \ - bits/std_iterator.h bits/std_list.h \ - bits/std_map.h bits/std_memory.h bits/std_numeric.h \ - bits/std_queue.h bits/std_set.h bits/std_stack.h \ - bits/std_stdexcept.h bits/functexcept.h bits/std_vector.h \ - bits/stl_algo.h bits/stl_algobase.h bits/stl_alloc.h \ - bits/stl_deque.h bits/stl_function.h \ - bits/stl_heap.h bits/stl_iterator.h bits/stl_list.h bits/stl_map.h \ - bits/stl_multimap.h bits/stl_multiset.h bits/stl_numeric.h \ - bits/stl_pair.h bits/stl_queue.h bits/stl_raw_storage_iter.h \ - bits/stl_relops.h bits/stl_set.h bits/stl_stack.h bits/stl_tempbuf.h \ - bits/stl_tree.h bits/stl_uninitialized.h bits/stl_vector.h \ - bits/stl_bvector.h bits/type_traits.h bits/std_algorithm.h \ - bits/stl_construct.h bits/boost_concept_check.h bits/concept_check.h - - - backward_headers = \ - backward/complex.h backward/iomanip.h backward/istream.h \ - backward/ostream.h backward/stream.h backward/streambuf.h \ - backward/algo.h backward/algobase.h backward/alloc.h \ - backward/bvector.h backward/defalloc.h backward/deque.h \ - backward/function.h backward/hash_map.h backward/hash_set.h \ - backward/hashtable.h backward/heap.h backward/iostream.h \ - backward/iterator.h backward/list.h backward/map.h \ - backward/multimap.h backward/new.h backward/multiset.h \ - backward/pair.h backward/queue.h backward/rope.h backward/set.h \ - backward/slist.h backward/stack.h backward/tempbuf.h backward/tree.h \ - backward/vector.h backward/fstream.h backward/strstream.h \ - backward/strstream backward/backward_warning.h - - ext_headers = \ - ext/rope ext/ropeimpl.h ext/stl_rope.h \ - ext/slist ext/hash_map ext/hash_set \ - ext/stl_hashtable.h ext/stl_hash_fun.h - - c_base_headers = \ - bits/std_cassert.h bits/std_cctype.h bits/std_cerrno.h \ - bits/std_cfloat.h bits/std_climits.h bits/std_clocale.h \ - bits/std_cmath.h bits/std_csetjmp.h bits/std_csignal.h \ - bits/std_cstdarg.h bits/std_cstddef.h bits/std_cstdio.h \ - bits/std_cstdlib.h bits/std_cstring.h bits/std_ctime.h \ - bits/std_cwchar.h bits/std_cwctype.h bits/cmath.tcc - - if GLIBCPP_USE_CSHADOW - c_shadow_headers = \ - assert.h ctype.h errno.h float.h limits.h locale.h math.h setjmp.h \ - signal.h stdarg.h stddef.h stdio.h stdlib.h string.h time.h wchar.h \ - wctype.h fcntl.h libio.h iolibio.h libioP.h pthread.h iconv.h \ - features.h langinfo.h \ - bits/wrap_libio.h bits/wrap_iolibio.h bits/wrap_libioP.h \ - bits/wrap_iconv.h bits/wrap_fcntl.h bits/wrap_pthread.h \ - bits/wrap_features.h bits/wrap_langinfo.h \ - sys/cdefs.h - else - c_shadow_headers = - endif - - std_headers = \ - algorithm bitset complex deque fstream functional \ - iomanip ios iosfwd iostream istream iterator limits list locale \ - map memory numeric ostream queue set sstream stack stdexcept \ - streambuf string utility valarray vector \ - cassert cctype cerrno cfloat climits clocale ciso646 \ - cmath csetjmp csignal cstdarg cstddef cstdio cstdlib \ - cstring ctime cwchar cwctype - - if GLIBCPP_NEED_LIBIO - libio_headers = \ - $(top_srcdir)/libio/_G_config.h $(top_srcdir)/libio/libio.h - else - libio_headers = - endif - - build_headers = \ - bits/std_limits.h \ - bits/c++config.h bits/c++io.h bits/c++locale.h \ - bits/gthr.h bits/gthr-single.h bits/gthr-default.h \ - bits/basic_file_model.h \ - bits/atomicity.h bits/os_defines.h \ - bits/ctype_base.h bits/ctype_noninline.h bits/ctype_inline.h - sources = \ ! limitsMEMBERS.cc \ ! stdexcept.cc functexcept.cc bitset.cc \ ! globals.cc \ ! basic_file.cc ios.cc complex_io.cc strstream.cc \ ! c++locale.cc locale.cc localename.cc codecvt.cc \ ! locale-inst.cc stl-inst.cc misc-inst.cc valarray-inst.cc \ ! string-inst.cc wstring-inst.cc ! VPATH = $(top_srcdir):$(top_srcdir)/src:$(GLIBCPP_INCLUDE_DIR):$(GLIBCPP_INCLUDE_DIR)/std:$(C_INCLUDE_DIR) libstdc___la_SOURCES = $(sources) --- 57,75 ---- INCLUDES = \ -nostdinc++ \ ! $(GLIBCPP_INCLUDES) \ $(LIBSUPCXX_INCLUDES) $(LIBIO_INCLUDES) $(LIBMATH_INCLUDES) \ $(TOPLEVEL_INCLUDES) sources = \ ! basic_file.cc bitset.cc c++locale.cc cmath.cc codecvt.cc \ ! complex_io.cc functexcept.cc globals.cc ios.cc limits.cc \ ! locale.cc locale-inst.cc localename.cc misc-inst.cc stdexcept.cc \ ! stl-inst.cc string-inst.cc strstream.cc valarray-inst.cc \ ! wstring-inst.cc ! VPATH = $(top_srcdir):$(top_srcdir)/src libstdc___la_SOURCES = $(sources) *************** libstdc___la_LIBADD = \ *** 182,284 **** ../libmath/libmath.la @libio_la@ \ ../libsupc++/libsupc++convenience.la ! libstdc___la_LDFLAGS = -version-info 3:0:0 -lm libstdc___la_DEPENDENCIES = $(libstdc___la_LIBADD) # Use special rules for the deprecated source files so that they find # deprecated include files. strstream.lo: strstream.cc $(LTCXXCOMPILE) -I$(GLIBCPP_INCLUDE_DIR)/backward -c $< strstream.o: strstream.cc $(CXXCOMPILE) -I$(GLIBCPP_INCLUDE_DIR)/backward -c $< - - # Make sure cshadow headers are built first. - if GLIBCPP_USE_CSHADOW - CSHADOW_H = $(top_builddir)/stamp-cshadow - else - CSHADOW_H = - endif - - # Specify that all *.o's depend on this. - $(libstdc___la_OBJECTS): $(CSHADOW_H) - - $(top_builddir)/stamp-cshadow: $(top_srcdir)/mkinclosure \ - $(top_srcdir)/mkcshadow - $(top_srcdir)/mkinclosure \ - "-I $(top_builddir)/../../gcc/include -I /usr/include -G fcntl.h unistd.h" | $(top_srcdir)/mkcshadow; - rm -f $(top_builddir)/stamp-cshadow - echo "done" > $(top_builddir)/stamp-cshadow - - - # Check for various configure bits that change where the headers get installed. - gxx_include_dir = @gxx_include_dir@ - gxx_target_include_dir = $(gxx_include_dir)/$(target_alias) - - # We have our own special, ridiculously complicated installation routine - # here, as automake/autoconf is currently brain-damaged when it comes - # to installing sub-directories of headers. In particular, we want to - # 1) install build headers from (blddir)/include/bits -> (install)/bits - # 2) install source headers from - # (srcdir)/include/bits -> (install)/bits - # (srcdir)/include/ext -> (install)/ext - # (srcdir)/include/backward -> (install)/backward - # ... and the always entertaining "C" compatibility bits - # where * represents configure-time directory switching - # (srcdir)/include/c* -> (install)/ - # (srcdir)/include/c*/bits -> (install)/bits - # (srcdir)/include/c*/sys -> (install)/sys - install-data-local: myinstalldirs myinstallheaders - - # NB: installation of shadow header directories is not attempted. - myinstalldirs: - if test -z "$(MULTISUBDIR)"; then \ - $(mkinstalldirs) $(DESTDIR)$(gxx_include_dir)/backward; \ - $(mkinstalldirs) $(DESTDIR)$(gxx_include_dir)/bits; \ - $(mkinstalldirs) $(DESTDIR)$(gxx_include_dir)/ext; \ - $(mkinstalldirs) $(DESTDIR)$(gxx_target_include_dir)/bits; \ - fi - - # NB: As libio_headers may be empty, need this to make sure bash doesn't - # choke on an empty for... loop by using libio_headers_install - # NB: installation of shadow headers is not attempted. - src_incdir = @GLIBCPP_INCLUDE_DIR@ - bld_incdir = $(top_builddir)/include - c_incdir = @C_INCLUDE_DIR@ - myinstallheaders: - if test -z "$(MULTISUBDIR)"; then \ - for i in $(base_headers); do \ - echo "$(INSTALL_DATA) $(src_incdir)/$$i $(gxx_include_dir)/bits/";\ - $(INSTALL_DATA) $(src_incdir)/$$i $(gxx_include_dir)/bits/; \ - done; \ - for i in $(ext_headers); do \ - echo "$(INSTALL_DATA) $(src_incdir)/$$i $(gxx_include_dir)/ext/";\ - $(INSTALL_DATA) $(src_incdir)/$$i $(gxx_include_dir)/ext/; \ - done; \ - for i in $(backward_headers); do \ - echo "$(INSTALL_DATA) $(src_incdir)/$$i $(gxx_include_dir)/backward/";\ - $(INSTALL_DATA) $(src_incdir)/$$i $(gxx_include_dir)/backward/; \ - done; \ - for i in $(c_base_headers); do \ - echo "$(INSTALL_DATA) $(c_incdir)/$$i $(gxx_include_dir)/bits/";\ - $(INSTALL_DATA) $(c_incdir)/$$i $(gxx_include_dir)/bits/; \ - done; \ - for i in $(std_headers); do \ - echo "$(INSTALL_DATA) $(src_incdir)/std/$$i $(gxx_include_dir)";\ - $(INSTALL_DATA) $(src_incdir)/std/$$i $(gxx_include_dir); \ - done; \ - for i in $(build_headers); do \ - echo "$(INSTALL_DATA) $(bld_incdir)/$$i \ - $(gxx_target_include_dir)/bits/"; $(INSTALL_DATA) \ - $(bld_incdir)/$$i $(gxx_target_include_dir)/bits/; \ - done; \ - libio_headers_install='$(libio_headers)'; \ - for i in $$libio_headers_install; do \ - echo "$(INSTALL_DATA) $$i $(gxx_include_dir)"; \ - $(INSTALL_DATA) $$i $(gxx_include_dir); \ - done; \ - fi; # AM_CXXFLAGS needs to be in each subdirectory so that it can be --- 77,94 ---- ../libmath/libmath.la @libio_la@ \ ../libsupc++/libsupc++convenience.la ! libstdc___la_LDFLAGS = -version-info 3:1:0 -lm libstdc___la_DEPENDENCIES = $(libstdc___la_LIBADD) # Use special rules for the deprecated source files so that they find # deprecated include files. + GLIBCPP_INCLUDE_DIR=@glibcpp_builddir@/include strstream.lo: strstream.cc $(LTCXXCOMPILE) -I$(GLIBCPP_INCLUDE_DIR)/backward -c $< strstream.o: strstream.cc $(CXXCOMPILE) -I$(GLIBCPP_INCLUDE_DIR)/backward -c $< # AM_CXXFLAGS needs to be in each subdirectory so that it can be diff -Nrc3pad gcc-3.0/libstdc++-v3/src/Makefile.in gcc-3.0.1/libstdc++-v3/src/Makefile.in *** gcc-3.0/libstdc++-v3/src/Makefile.in Fri Jun 8 13:09:30 2001 --- gcc-3.0.1/libstdc++-v3/src/Makefile.in Tue Aug 14 14:10:07 2001 *************** target_alias = @target_alias@ *** 66,91 **** --- 66,100 ---- target_triplet = @target@ AR = @AR@ AS = @AS@ + ATOMICITY_INC_SRCDIR = @ATOMICITY_INC_SRCDIR@ + BASIC_FILE_H = @BASIC_FILE_H@ CC = @CC@ + CCODECVT_C = @CCODECVT_C@ + CLOCALE_H = @CLOCALE_H@ CPP = @CPP@ CSHADOW_FLAGS = @CSHADOW_FLAGS@ + CSTDIO_H = @CSTDIO_H@ CXXCPP = @CXXCPP@ + C_INCLUDE_DIR = @C_INCLUDE_DIR@ DEBUG_FLAGS = @DEBUG_FLAGS@ DLLTOOL = @DLLTOOL@ EXEEXT = @EXEEXT@ EXTRA_CXX_FLAGS = @EXTRA_CXX_FLAGS@ GCJ = @GCJ@ GCJFLAGS = @GCJFLAGS@ + GLIBCPP_IS_CROSS_COMPILING = @GLIBCPP_IS_CROSS_COMPILING@ LIBMATHOBJS = @LIBMATHOBJS@ LIBSTRINGOBJS = @LIBSTRINGOBJS@ LIBSUPCXX_PICFLAGS = @LIBSUPCXX_PICFLAGS@ LIBTOOL = @LIBTOOL@ + LIMITS_INC_SRCDIR = @LIMITS_INC_SRCDIR@ LN_S = @LN_S@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OPT_LDFLAGS = @OPT_LDFLAGS@ + OS_INC_SRCDIR = @OS_INC_SRCDIR@ PACKAGE = @PACKAGE@ RANLIB = @RANLIB@ SECTION_FLAGS = @SECTION_FLAGS@ *************** glibcpp_basedir = @glibcpp_basedir@ *** 102,109 **** --- 111,120 ---- glibcpp_builddir = @glibcpp_builddir@ glibcpp_prefixdir = @glibcpp_prefixdir@ glibcpp_srcdir = @glibcpp_srcdir@ + glibcpp_thread_h = @glibcpp_thread_h@ glibcpp_toolexecdir = @glibcpp_toolexecdir@ glibcpp_toolexeclibdir = @glibcpp_toolexeclibdir@ + gxx_include_dir = @gxx_include_dir@ ifGNUmake = @ifGNUmake@ libio_la = @libio_la@ toplevel_srcdir = @toplevel_srcdir@ *************** WARN_CXXFLAGS = @WARN_FLAGS@ $(WERROR) *** 134,198 **** # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES ! GLIBCPP_INCLUDE_DIR = @GLIBCPP_INCLUDE_DIR@ ! C_INCLUDE_DIR = @C_INCLUDE_DIR@ ! CSTD_INCLUDES = @CSTD_INCLUDES@ LIBMATH_INCLUDES = @LIBMATH_INCLUDES@ LIBSUPCXX_INCLUDES = @LIBSUPCXX_INCLUDES@ LIBIO_INCLUDES = @LIBIO_INCLUDES@ TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@ ! INCLUDES = -nostdinc++ -I$(GLIBCPP_INCLUDE_DIR) $(CSTD_INCLUDES) -I$(top_builddir)/include $(LIBSUPCXX_INCLUDES) $(LIBIO_INCLUDES) $(LIBMATH_INCLUDES) $(TOPLEVEL_INCLUDES) ! ! ! base_headers = bits/cpp_type_traits.h bits/char_traits.h bits/codecvt.h bits/stringfwd.h bits/std_string.h bits/basic_string.h bits/basic_string.tcc bits/generic_shadow.h bits/std_utility.h bits/std_complex.h bits/valarray_array.h bits/valarray_array.tcc bits/valarray_meta.h bits/std_valarray.h bits/mask_array.h bits/slice.h bits/slice_array.h bits/gslice.h bits/gslice_array.h bits/indirect_array.h bits/std_fstream.h bits/std_iomanip.h bits/ios_base.h bits/fpos.h bits/basic_ios.h bits/basic_ios.tcc bits/std_ios.h bits/std_iosfwd.h bits/std_iostream.h bits/std_istream.h bits/istream.tcc bits/std_locale.h bits/fstream.tcc bits/ostream.tcc bits/sbuf_iter.h bits/sstream.tcc bits/std_ostream.h bits/std_sstream.h bits/std_streambuf.h bits/streambuf.tcc bits/basic_file.h bits/locale_facets.h bits/locale_facets.tcc bits/localefwd.h bits/stl_pthread_alloc.h bits/pthread_allocimpl.h bits/stl_threads.h bits/stl_iterator_base_types.h bits/stl_iterator_base_funcs.h bits/std_bitset.h bits/std_deque.h bits/std_functional.h bits/std_iterator.h bits/std_list.h bits/std_map.h bits/std_memory.h bits/std_numeric.h bits/std_queue.h bits/std_set.h bits/std_stack.h bits/std_stdexcept.h bits/functexcept.h bits/std_vector.h bits/stl_algo.h bits/stl_algobase.h bits/stl_alloc.h bits/stl_deque.h bits/stl_function.h bits/stl_heap.h bits/stl_iterator.h bits/stl_list.h bits/stl_map.h bits/stl_multimap.h bits/stl_multiset.h bits/stl_numeric.h bits/stl_pair.h bits/stl_queue.h bits/stl_raw_storage_iter.h bits/stl_relops.h bits/stl_set.h bits/stl_stack.h bits/stl_tempbuf.h bits/stl_tree.h bits/stl_uninitialized.h bits/stl_vector.h bits/stl_bvector.h bits/type_traits.h bits/std_algorithm.h bits/stl_construct.h bits/boost_concept_check.h bits/concept_check.h ! ! ! backward_headers = backward/complex.h backward/iomanip.h backward/istream.h backward/ostream.h backward/stream.h backward/streambuf.h backward/algo.h backward/algobase.h backward/alloc.h backward/bvector.h backward/defalloc.h backward/deque.h backward/function.h backward/hash_map.h backward/hash_set.h backward/hashtable.h backward/heap.h backward/iostream.h backward/iterator.h backward/list.h backward/map.h backward/multimap.h backward/new.h backward/multiset.h backward/pair.h backward/queue.h backward/rope.h backward/set.h backward/slist.h backward/stack.h backward/tempbuf.h backward/tree.h backward/vector.h backward/fstream.h backward/strstream.h backward/strstream backward/backward_warning.h ! ! ! ext_headers = ext/rope ext/ropeimpl.h ext/stl_rope.h ext/slist ext/hash_map ext/hash_set ext/stl_hashtable.h ext/stl_hash_fun.h ! ! ! c_base_headers = bits/std_cassert.h bits/std_cctype.h bits/std_cerrno.h bits/std_cfloat.h bits/std_climits.h bits/std_clocale.h bits/std_cmath.h bits/std_csetjmp.h bits/std_csignal.h bits/std_cstdarg.h bits/std_cstddef.h bits/std_cstdio.h bits/std_cstdlib.h bits/std_cstring.h bits/std_ctime.h bits/std_cwchar.h bits/std_cwctype.h bits/cmath.tcc ! ! @GLIBCPP_USE_CSHADOW_TRUE@c_shadow_headers = assert.h ctype.h errno.h float.h limits.h locale.h math.h setjmp.h signal.h stdarg.h stddef.h stdio.h stdlib.h string.h time.h wchar.h wctype.h fcntl.h libio.h iolibio.h libioP.h pthread.h iconv.h features.h langinfo.h bits/wrap_libio.h bits/wrap_iolibio.h bits/wrap_libioP.h bits/wrap_iconv.h bits/wrap_fcntl.h bits/wrap_pthread.h bits/wrap_features.h bits/wrap_langinfo.h sys/cdefs.h ! @GLIBCPP_USE_CSHADOW_FALSE@c_shadow_headers = ! ! std_headers = algorithm bitset complex deque fstream functional iomanip ios iosfwd iostream istream iterator limits list locale map memory numeric ostream queue set sstream stack stdexcept streambuf string utility valarray vector cassert cctype cerrno cfloat climits clocale ciso646 cmath csetjmp csignal cstdarg cstddef cstdio cstdlib cstring ctime cwchar cwctype ! ! @GLIBCPP_NEED_LIBIO_TRUE@libio_headers = $(top_srcdir)/libio/_G_config.h $(top_srcdir)/libio/libio.h ! @GLIBCPP_NEED_LIBIO_FALSE@libio_headers = ! ! build_headers = bits/std_limits.h bits/c++config.h bits/c++io.h bits/c++locale.h bits/gthr.h bits/gthr-single.h bits/gthr-default.h bits/basic_file_model.h bits/atomicity.h bits/os_defines.h bits/ctype_base.h bits/ctype_noninline.h bits/ctype_inline.h ! sources = limitsMEMBERS.cc stdexcept.cc functexcept.cc bitset.cc globals.cc basic_file.cc ios.cc complex_io.cc strstream.cc c++locale.cc locale.cc localename.cc codecvt.cc locale-inst.cc stl-inst.cc misc-inst.cc valarray-inst.cc string-inst.cc wstring-inst.cc ! VPATH = $(top_srcdir):$(top_srcdir)/src:$(GLIBCPP_INCLUDE_DIR):$(GLIBCPP_INCLUDE_DIR)/std:$(C_INCLUDE_DIR) libstdc___la_SOURCES = $(sources) libstdc___la_LIBADD = ../libmath/libmath.la @libio_la@ ../libsupc++/libsupc++convenience.la ! libstdc___la_LDFLAGS = -version-info 3:0:0 -lm libstdc___la_DEPENDENCIES = $(libstdc___la_LIBADD) - @GLIBCPP_USE_CSHADOW_TRUE@CSHADOW_H = $(top_builddir)/stamp-cshadow - @GLIBCPP_USE_CSHADOW_FALSE@CSHADOW_H = ! # Check for various configure bits that change where the headers get installed. ! gxx_include_dir = @gxx_include_dir@ ! gxx_target_include_dir = $(gxx_include_dir)/$(target_alias) ! ! # NB: As libio_headers may be empty, need this to make sure bash doesn't ! # choke on an empty for... loop by using libio_headers_install ! # NB: installation of shadow headers is not attempted. ! src_incdir = @GLIBCPP_INCLUDE_DIR@ ! bld_incdir = $(top_builddir)/include ! c_incdir = @C_INCLUDE_DIR@ # AM_CXXFLAGS needs to be in each subdirectory so that it can be # modified in a per-library or per-sub-library way. Need to manually --- 145,176 ---- # Use common includes from acinclude.m4/GLIBCPP_EXPORT_INCLUDES ! GLIBCPP_INCLUDES = @GLIBCPP_INCLUDES@ LIBMATH_INCLUDES = @LIBMATH_INCLUDES@ LIBSUPCXX_INCLUDES = @LIBSUPCXX_INCLUDES@ LIBIO_INCLUDES = @LIBIO_INCLUDES@ TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@ ! INCLUDES = -nostdinc++ $(GLIBCPP_INCLUDES) $(LIBSUPCXX_INCLUDES) $(LIBIO_INCLUDES) $(LIBMATH_INCLUDES) $(TOPLEVEL_INCLUDES) ! sources = basic_file.cc bitset.cc c++locale.cc cmath.cc codecvt.cc complex_io.cc functexcept.cc globals.cc ios.cc limits.cc locale.cc locale-inst.cc localename.cc misc-inst.cc stdexcept.cc stl-inst.cc string-inst.cc strstream.cc valarray-inst.cc wstring-inst.cc ! VPATH = $(top_srcdir):$(top_srcdir)/src libstdc___la_SOURCES = $(sources) libstdc___la_LIBADD = ../libmath/libmath.la @libio_la@ ../libsupc++/libsupc++convenience.la ! libstdc___la_LDFLAGS = -version-info 3:1:0 -lm libstdc___la_DEPENDENCIES = $(libstdc___la_LIBADD) ! # Use special rules for the deprecated source files so that they find ! # deprecated include files. ! GLIBCPP_INCLUDE_DIR = @glibcpp_builddir@/include # AM_CXXFLAGS needs to be in each subdirectory so that it can be # modified in a per-library or per-sub-library way. Need to manually *************** DEFS = @DEFS@ -I. -I$(srcdir) -I.. *** 244,253 **** CPPFLAGS = @CPPFLAGS@ LDFLAGS = @LDFLAGS@ LIBS = @LIBS@ ! libstdc___la_OBJECTS = limitsMEMBERS.lo stdexcept.lo functexcept.lo \ ! bitset.lo globals.lo basic_file.lo ios.lo complex_io.lo strstream.lo \ ! c++locale.lo locale.lo localename.lo codecvt.lo locale-inst.lo \ ! stl-inst.lo misc-inst.lo valarray-inst.lo string-inst.lo \ wstring-inst.lo CXXFLAGS = @CXXFLAGS@ CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) --- 222,231 ---- CPPFLAGS = @CPPFLAGS@ LDFLAGS = @LDFLAGS@ LIBS = @LIBS@ ! libstdc___la_OBJECTS = basic_file.lo bitset.lo c++locale.lo cmath.lo \ ! codecvt.lo complex_io.lo functexcept.lo globals.lo ios.lo limits.lo \ ! locale.lo locale-inst.lo localename.lo misc-inst.lo stdexcept.lo \ ! stl-inst.lo string-inst.lo strstream.lo valarray-inst.lo \ wstring-inst.lo CXXFLAGS = @CXXFLAGS@ CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) *************** install-info: install-info-am *** 408,414 **** install-exec-am: install-toolexeclibLTLIBRARIES install-exec: install-exec-am ! install-data-am: install-data-local install-data: install-data-am install-am: all-am --- 386,392 ---- install-exec-am: install-toolexeclibLTLIBRARIES install-exec: install-exec-am ! install-data-am: install-data: install-data-am install-am: all-am *************** maintainer-clean-compile mostlyclean-lib *** 469,554 **** clean-libtool maintainer-clean-libtool tags mostlyclean-tags \ distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ dvi-am dvi check check-am installcheck-am installcheck install-info-am \ ! install-info install-exec-am install-exec install-data-local \ ! install-data-am install-data install-am install uninstall-am uninstall \ ! all-redirect all-am all installdirs mostlyclean-generic \ ! distclean-generic clean-generic maintainer-clean-generic clean \ ! mostlyclean distclean maintainer-clean ! - # Use special rules for the deprecated source files so that they find - # deprecated include files. strstream.lo: strstream.cc $(LTCXXCOMPILE) -I$(GLIBCPP_INCLUDE_DIR)/backward -c $< strstream.o: strstream.cc $(CXXCOMPILE) -I$(GLIBCPP_INCLUDE_DIR)/backward -c $< - - # Specify that all *.o's depend on this. - $(libstdc___la_OBJECTS): $(CSHADOW_H) - - $(top_builddir)/stamp-cshadow: $(top_srcdir)/mkinclosure \ - $(top_srcdir)/mkcshadow - $(top_srcdir)/mkinclosure \ - "-I $(top_builddir)/../../gcc/include -I /usr/include -G fcntl.h unistd.h" | $(top_srcdir)/mkcshadow; - rm -f $(top_builddir)/stamp-cshadow - echo "done" > $(top_builddir)/stamp-cshadow - - # We have our own special, ridiculously complicated installation routine - # here, as automake/autoconf is currently brain-damaged when it comes - # to installing sub-directories of headers. In particular, we want to - # 1) install build headers from (blddir)/include/bits -> (install)/bits - # 2) install source headers from - # (srcdir)/include/bits -> (install)/bits - # (srcdir)/include/ext -> (install)/ext - # (srcdir)/include/backward -> (install)/backward - # ... and the always entertaining "C" compatibility bits - # where * represents configure-time directory switching - # (srcdir)/include/c* -> (install)/ - # (srcdir)/include/c*/bits -> (install)/bits - # (srcdir)/include/c*/sys -> (install)/sys - install-data-local: myinstalldirs myinstallheaders - - # NB: installation of shadow header directories is not attempted. - myinstalldirs: - if test -z "$(MULTISUBDIR)"; then \ - $(mkinstalldirs) $(DESTDIR)$(gxx_include_dir)/backward; \ - $(mkinstalldirs) $(DESTDIR)$(gxx_include_dir)/bits; \ - $(mkinstalldirs) $(DESTDIR)$(gxx_include_dir)/ext; \ - $(mkinstalldirs) $(DESTDIR)$(gxx_target_include_dir)/bits; \ - fi - myinstallheaders: - if test -z "$(MULTISUBDIR)"; then \ - for i in $(base_headers); do \ - echo "$(INSTALL_DATA) $(src_incdir)/$$i $(gxx_include_dir)/bits/";\ - $(INSTALL_DATA) $(src_incdir)/$$i $(gxx_include_dir)/bits/; \ - done; \ - for i in $(ext_headers); do \ - echo "$(INSTALL_DATA) $(src_incdir)/$$i $(gxx_include_dir)/ext/";\ - $(INSTALL_DATA) $(src_incdir)/$$i $(gxx_include_dir)/ext/; \ - done; \ - for i in $(backward_headers); do \ - echo "$(INSTALL_DATA) $(src_incdir)/$$i $(gxx_include_dir)/backward/";\ - $(INSTALL_DATA) $(src_incdir)/$$i $(gxx_include_dir)/backward/; \ - done; \ - for i in $(c_base_headers); do \ - echo "$(INSTALL_DATA) $(c_incdir)/$$i $(gxx_include_dir)/bits/";\ - $(INSTALL_DATA) $(c_incdir)/$$i $(gxx_include_dir)/bits/; \ - done; \ - for i in $(std_headers); do \ - echo "$(INSTALL_DATA) $(src_incdir)/std/$$i $(gxx_include_dir)";\ - $(INSTALL_DATA) $(src_incdir)/std/$$i $(gxx_include_dir); \ - done; \ - for i in $(build_headers); do \ - echo "$(INSTALL_DATA) $(bld_incdir)/$$i \ - $(gxx_target_include_dir)/bits/"; $(INSTALL_DATA) \ - $(bld_incdir)/$$i $(gxx_target_include_dir)/bits/; \ - done; \ - libio_headers_install='$(libio_headers)'; \ - for i in $$libio_headers_install; do \ - echo "$(INSTALL_DATA) $$i $(gxx_include_dir)"; \ - $(INSTALL_DATA) $$i $(gxx_include_dir); \ - done; \ - fi; # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. --- 447,461 ---- clean-libtool maintainer-clean-libtool tags mostlyclean-tags \ distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ dvi-am dvi check check-am installcheck-am installcheck install-info-am \ ! install-info install-exec-am install-exec install-data-am install-data \ ! install-am install uninstall-am uninstall all-redirect all-am all \ ! installdirs mostlyclean-generic distclean-generic clean-generic \ ! maintainer-clean-generic clean mostlyclean distclean maintainer-clean strstream.lo: strstream.cc $(LTCXXCOMPILE) -I$(GLIBCPP_INCLUDE_DIR)/backward -c $< strstream.o: strstream.cc $(CXXCOMPILE) -I$(GLIBCPP_INCLUDE_DIR)/backward -c $< # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff -Nrc3pad gcc-3.0/libstdc++-v3/src/bitset.cc gcc-3.0.1/libstdc++-v3/src/bitset.cc *** gcc-3.0/libstdc++-v3/src/bitset.cc Thu May 31 12:13:09 2001 --- gcc-3.0.1/libstdc++-v3/src/bitset.cc Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,33 ---- + // Bitset definitions -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation + // + // This file is part of GNU CC. + // + // GNU CC is free software; you can redistribute it and/or modify + // it under the terms of the GNU General Public License as published by + // the Free Software Foundation; either version 2, or (at your option) + // any later version. + // + // GNU CC is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + // + // You should have received a copy of the GNU General Public License + // along with GNU CC; see the file COPYING. If not, write to + // the Free Software Foundation, 59 Temple Place - Suite 330, + // Boston, MA 02111-1307, USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * Copyright (c) 1998 * Silicon Graphics Computer Systems, Inc. diff -Nrc3pad gcc-3.0/libstdc++-v3/src/cmath.cc gcc-3.0.1/libstdc++-v3/src/cmath.cc *** gcc-3.0/libstdc++-v3/src/cmath.cc Wed Dec 31 16:00:00 1969 --- gcc-3.0.1/libstdc++-v3/src/cmath.cc Mon Jun 25 14:03:07 2001 *************** *** 0 **** --- 1,48 ---- + // Explicit instantiation file for -*- C++ -*- math library. + + // Copyright (C) 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + + + // These are explicit instantiations of the behind-the-scenes internal + // helper functions used in the math routines of libstdc++. + + + #include + + namespace std + { + // This function is only declared/used in the cheaders=c_std case. + template float + __cmath_power(float, unsigned int); + template double + __cmath_power(double, unsigned int); + template long double + __cmath_power(long double, unsigned int); + + } // namespace std + diff -Nrc3pad gcc-3.0/libstdc++-v3/src/gen-num-limits.cc gcc-3.0.1/libstdc++-v3/src/gen-num-limits.cc *** gcc-3.0/libstdc++-v3/src/gen-num-limits.cc Mon May 14 12:49:14 2001 --- gcc-3.0.1/libstdc++-v3/src/gen-num-limits.cc Sat Aug 11 11:12:18 2001 *************** *** 33,56 **** // Do not compile with optimization turned on. // ! #include ! ! #if HAVE_CONFIG_H ! # include ! #endif ! ! // ! // Force Linux to define the *LONG_LONG* ! // ! #if __linux__ && _GLIBCPP_USE_LONG_LONG ! # ifndef __USE_GNU ! # define __USE_GNU 1 ! # endif ! # ifndef _GNU_SOURCE ! # define _GNU_SOURCE 1 ! # endif ! #endif ! #include #include #include --- 33,39 ---- // Do not compile with optimization turned on. // ! #include #include #include #include *************** template *** 174,188 **** template struct underflow { }; // traps template void traps() { fflush(NULL); ! signal_adapter (signal, SIGFPE, signal_handler); ! signal_adapter (signal, SIGTRAP, signal_handler); bool trap_flag = trapping(division_by_zero()); ! signal_adapter (signal, SIGFPE, signal_handler); ! signal_adapter (signal, SIGTRAP, signal_handler); trap_flag = trap_flag || trapping(overflow()); const char* p = bool_alpha[trap_flag]; printf("%s%s = %s;\n", tab2, "static const bool traps", p); --- 157,179 ---- template struct underflow { }; + + // Set various signals handler for trapping aritmetic ops. + void set_signals_handler() + { + signal_adapter(signal, SIGFPE, signal_handler); + signal_adapter(signal, SIGTRAP, signal_handler); + // This is necessary for Linux/SPARC. + signal_adapter(signal, SIGILL, signal_handler); + } + // traps template void traps() { fflush(NULL); ! set_signals_handler(); bool trap_flag = trapping(division_by_zero()); ! set_signals_handler(); trap_flag = trap_flag || trapping(overflow()); const char* p = bool_alpha[trap_flag]; printf("%s%s = %s;\n", tab2, "static const bool traps", p); *************** template void traps() *** 192,199 **** template<> void traps< T >() \ { \ fflush(NULL); \ ! signal_adapter (signal, SIGFPE, signal_handler); \ ! signal_adapter (signal, SIGTRAP, signal_handler); \ const char* p = bool_alpha[trapping(division_by_zero())]; \ printf("%s%s = %s;\n", tab2, "static const bool traps", p); \ } --- 183,189 ---- template<> void traps< T >() \ { \ fflush(NULL); \ ! set_signals_handler(); \ const char* p = bool_alpha[trapping(division_by_zero())]; \ printf("%s%s = %s;\n", tab2, "static const bool traps", p); \ } *************** template *** 216,222 **** --- 206,214 ---- }; #define DEFINED_TYPE_NAME(T) \ + template<> \ const char type_name_trait< T >::type_name[] = #T; \ + template<> \ const char type_name_trait< T >::trait_name[] = "numeric_limits<" #T ">"; DEFINED_TYPE_NAME(bool); *************** template *** 289,295 **** --- 281,289 ---- const bool predicate::is_exact = true; #define SPECIALIZE_EXACTNESS(T) \ + template<> \ const bool predicate< T >::is_integer = false; \ + template<> \ const bool predicate< T >::is_exact = false SPECIALIZE_EXACTNESS(float); *************** template *** 321,326 **** --- 315,321 ---- const bool predicate::is_iec559 = false; #define SPECIALIZE_IEC559(T) \ + template<> \ const bool predicate< T >::is_iec559 = true SPECIALIZE_IEC559(bool); *************** template *** 359,365 **** --- 354,362 ---- #define DEFINE_EXTREMA(T, m, M) DO_DEFINE_EXTREMA(T, m, M) #define DO_DEFINE_EXTREMA(T, m, M) \ + template<> \ const char value< T >::min[] = #m; \ + template<> \ const char value< T >::max[] = #M DEFINE_EXTREMA(bool, false, true); *************** DEFINE_EXTREMA(unsigned int, 0, UINT_MAX *** 376,383 **** DEFINE_EXTREMA(long, LONG_MIN, LONG_MAX); DEFINE_EXTREMA(unsigned long, 0, ULONG_MAX); #ifdef _GLIBCPP_USE_LONG_LONG ! DEFINE_EXTREMA(long long, LONG_LONG_MIN, LONG_LONG_MAX); ! DEFINE_EXTREMA(unsigned long long, 0, ULONG_LONG_MAX); #endif DEFINE_EXTREMA(float, FLT_MIN, FLT_MAX); DEFINE_EXTREMA(double, DBL_MIN, DBL_MAX); --- 373,380 ---- DEFINE_EXTREMA(long, LONG_MIN, LONG_MAX); DEFINE_EXTREMA(unsigned long, 0, ULONG_MAX); #ifdef _GLIBCPP_USE_LONG_LONG ! DEFINE_EXTREMA(long long, (-__LONG_LONG_MAX__-1), __LONG_LONG_MAX__); ! DEFINE_EXTREMA(unsigned long long, 0, (__LONG_LONG_MAX__ * 2ULL + 1)); #endif DEFINE_EXTREMA(float, FLT_MIN, FLT_MAX); DEFINE_EXTREMA(double, DBL_MIN, DBL_MAX); *************** const int value::digits = *** 396,403 **** template const int value::radix = 2; ! #define SPECIALIZE_DIGITS(T, D, D10) \ ! const int value< T >::digits = D; \ const int value< T >::digits10 = D10 SPECIALIZE_DIGITS(float, FLT_MANT_DIG, FLT_DIG); --- 393,402 ---- template const int value::radix = 2; ! #define SPECIALIZE_DIGITS(T, D, D10) \ ! template<> \ ! const int value< T >::digits = D; \ ! template<> \ const int value< T >::digits10 = D10 SPECIALIZE_DIGITS(float, FLT_MANT_DIG, FLT_DIG); *************** SPECIALIZE_DIGITS(long double, LDBL_MANT *** 407,413 **** #undef SPECIALIZE_DIGITS ! #define SPECIALIZE_RADIX(T, R) const int value< T >::radix = R SPECIALIZE_RADIX(float, FLT_RADIX); SPECIALIZE_RADIX(double, FLT_RADIX); --- 406,414 ---- #undef SPECIALIZE_DIGITS ! #define SPECIALIZE_RADIX(T, R) \ ! template<> \ ! const int value< T >::radix = R SPECIALIZE_RADIX(float, FLT_RADIX); SPECIALIZE_RADIX(double, FLT_RADIX); *************** const char value::epsilon[] = "0"; *** 428,434 **** #endif #define SPECIALIZE_EPSILON(T, E) DO_SPECIALIZE_EPSILON(T, E) ! #define DO_SPECIALIZE_EPSILON(T, E) const char value< T >::epsilon[] = #E // unsophisticated, gross method #if 1 --- 429,437 ---- #endif #define SPECIALIZE_EPSILON(T, E) DO_SPECIALIZE_EPSILON(T, E) ! #define DO_SPECIALIZE_EPSILON(T, E) \ ! template<> \ ! const char value< T >::epsilon[] = #E // unsophisticated, gross method #if 1 *************** template *** 467,473 **** const char value::round_error[] = "0"; #endif ! #define SPECIALIZE_ROUND_ERROR(T, R) const char value< T >::round_error[] = #R // unsophisticated, gross method #if 1 SPECIALIZE_ROUND_ERROR(bool, 0); --- 470,478 ---- const char value::round_error[] = "0"; #endif ! #define SPECIALIZE_ROUND_ERROR(T, R) \ ! template<> \ ! const char value< T >::round_error[] = #R // unsophisticated, gross method #if 1 SPECIALIZE_ROUND_ERROR(bool, 0); *************** const int value::max_exponent = 0; *** 504,513 **** template const int value::max_exponent10 = 0; ! #define SPECIALIZE_EXPONENTS(T, m, m10, M, M10) \ ! const int value< T >::min_exponent = m; \ ! const int value< T >::min_exponent10 = m10; \ ! const int value< T >::max_exponent = M; \ const int value< T >::max_exponent10 = M10 SPECIALIZE_EXPONENTS(float, FLT_MIN_EXP, FLT_MIN_10_EXP, --- 509,522 ---- template const int value::max_exponent10 = 0; ! #define SPECIALIZE_EXPONENTS(T, m, m10, M, M10) \ ! template<> \ ! const int value< T >::min_exponent = m; \ ! template<> \ ! const int value< T >::min_exponent10 = m10; \ ! template<> \ ! const int value< T >::max_exponent = M; \ ! template<> \ const int value< T >::max_exponent10 = M10 SPECIALIZE_EXPONENTS(float, FLT_MIN_EXP, FLT_MIN_10_EXP, *************** template *** 575,581 **** void digits10() { printf("%s%s = %d;\n", tab2, "static const int digits10", ! int(log10_of_two * value::digits)); } template --- 584,590 ---- void digits10() { printf("%s%s = %d;\n", tab2, "static const int digits10", ! int(log10_of_two * value::digits) + 1); } template diff -Nrc3pad gcc-3.0/libstdc++-v3/src/limits.cc gcc-3.0.1/libstdc++-v3/src/limits.cc *** gcc-3.0/libstdc++-v3/src/limits.cc Wed Dec 31 16:00:00 1969 --- gcc-3.0.1/libstdc++-v3/src/limits.cc Sat Aug 11 11:12:18 2001 *************** *** 0 **** --- 1,429 ---- + // Static data members of -*- C++ -*- numeric_limits classes + + // Copyright (C) 1999, 2001 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free + // software; you can redistribute it and/or modify it under the + // terms of the GNU General Public License as published by the + // Free Software Foundation; either version 2, or (at your option) + // any later version. + + // This library is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + + // You should have received a copy of the GNU General Public License along + // with this library; see the file COPYING. If not, write to the Free + // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, + // USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + + // Written by Gabriel Dos Reis + + // + // ISO C++ 14882:1998 + // 18.2.1 + // + + #include + namespace std + { + // bool + const bool numeric_limits::is_specialized; + const int numeric_limits::digits; + const int numeric_limits::digits10; + const bool numeric_limits::is_signed; + const bool numeric_limits::is_integer; + const bool numeric_limits::is_exact; + const int numeric_limits::radix; + const int numeric_limits::min_exponent; + const int numeric_limits::min_exponent10; + const int numeric_limits::max_exponent; + const int numeric_limits::max_exponent10; + const bool numeric_limits::has_infinity; + const bool numeric_limits::has_quiet_NaN; + const bool numeric_limits::has_signaling_NaN; + const float_denorm_style numeric_limits::has_denorm; + const bool numeric_limits::has_denorm_loss; + const bool numeric_limits::is_iec559; + const bool numeric_limits::is_bounded; + const bool numeric_limits::is_modulo; + const bool numeric_limits::traps; + const bool numeric_limits::tinyness_before; + const float_round_style numeric_limits::round_style; + + // char + const bool numeric_limits::is_specialized; + const int numeric_limits::digits; + const int numeric_limits::digits10; + const bool numeric_limits::is_signed; + const bool numeric_limits::is_integer; + const bool numeric_limits::is_exact; + const int numeric_limits::radix; + const int numeric_limits::min_exponent; + const int numeric_limits::min_exponent10; + const int numeric_limits::max_exponent; + const int numeric_limits::max_exponent10; + const bool numeric_limits::has_infinity; + const bool numeric_limits::has_quiet_NaN; + const bool numeric_limits::has_signaling_NaN; + const float_denorm_style numeric_limits::has_denorm; + const bool numeric_limits::has_denorm_loss; + const bool numeric_limits::is_iec559; + const bool numeric_limits::is_bounded; + const bool numeric_limits::is_modulo; + const bool numeric_limits::traps; + const bool numeric_limits::tinyness_before; + const float_round_style numeric_limits::round_style; + + // signed char + const bool numeric_limits::is_specialized; + const int numeric_limits::digits; + const int numeric_limits::digits10; + const bool numeric_limits::is_signed; + const bool numeric_limits::is_integer; + const bool numeric_limits::is_exact; + const int numeric_limits::radix; + const int numeric_limits::min_exponent; + const int numeric_limits::min_exponent10; + const int numeric_limits::max_exponent; + const int numeric_limits::max_exponent10; + const bool numeric_limits::has_infinity; + const bool numeric_limits::has_quiet_NaN; + const bool numeric_limits::has_signaling_NaN; + const float_denorm_style numeric_limits::has_denorm; + const bool numeric_limits::has_denorm_loss; + const bool numeric_limits::is_iec559; + const bool numeric_limits::is_bounded; + const bool numeric_limits::is_modulo; + const bool numeric_limits::traps; + const bool numeric_limits::tinyness_before; + const float_round_style numeric_limits::round_style; + + // unsigned char + const bool numeric_limits::is_specialized; + const int numeric_limits::digits; + const int numeric_limits::digits10; + const bool numeric_limits::is_signed; + const bool numeric_limits::is_integer; + const bool numeric_limits::is_exact; + const int numeric_limits::radix; + const int numeric_limits::min_exponent; + const int numeric_limits::min_exponent10; + const int numeric_limits::max_exponent; + const int numeric_limits::max_exponent10; + const bool numeric_limits::has_infinity; + const bool numeric_limits::has_quiet_NaN; + const bool numeric_limits::has_signaling_NaN; + const float_denorm_style numeric_limits::has_denorm; + const bool numeric_limits::has_denorm_loss; + const bool numeric_limits::is_iec559; + const bool numeric_limits::is_bounded; + const bool numeric_limits::is_modulo; + const bool numeric_limits::traps; + const bool numeric_limits::tinyness_before; + const float_round_style numeric_limits::round_style; + + // wchar_t + // This used to be problematic... + #ifdef _GLIBCPP_USE_WCHAR_T + const bool numeric_limits::is_specialized; + const int numeric_limits::digits; + const int numeric_limits::digits10; + const bool numeric_limits::is_signed; + const bool numeric_limits::is_integer; + const bool numeric_limits::is_exact; + const int numeric_limits::radix; + const int numeric_limits::min_exponent; + const int numeric_limits::min_exponent10; + const int numeric_limits::max_exponent; + const int numeric_limits::max_exponent10; + const bool numeric_limits::has_infinity; + const bool numeric_limits::has_quiet_NaN; + const bool numeric_limits::has_signaling_NaN; + const float_denorm_style numeric_limits::has_denorm; + const bool numeric_limits::has_denorm_loss; + const bool numeric_limits::is_iec559; + const bool numeric_limits::is_bounded; + const bool numeric_limits::is_modulo; + const bool numeric_limits::traps; + const bool numeric_limits::tinyness_before; + const float_round_style numeric_limits::round_style; + #endif // _GLIBCPP_USE_WCHAR_T + + // short + const bool numeric_limits::is_specialized; + const int numeric_limits::digits; + const int numeric_limits::digits10; + const bool numeric_limits::is_signed; + const bool numeric_limits::is_integer; + const bool numeric_limits::is_exact; + const int numeric_limits::radix; + const int numeric_limits::min_exponent; + const int numeric_limits::min_exponent10; + const int numeric_limits::max_exponent; + const int numeric_limits::max_exponent10; + const bool numeric_limits::has_infinity; + const bool numeric_limits::has_quiet_NaN; + const bool numeric_limits::has_signaling_NaN; + const float_denorm_style numeric_limits::has_denorm; + const bool numeric_limits::has_denorm_loss; + const bool numeric_limits::is_iec559; + const bool numeric_limits::is_bounded; + const bool numeric_limits::is_modulo; + const bool numeric_limits::traps; + const bool numeric_limits::tinyness_before; + const float_round_style numeric_limits::round_style; + + // unsigned short + const bool numeric_limits::is_specialized; + const int numeric_limits::digits; + const int numeric_limits::digits10; + const bool numeric_limits::is_signed; + const bool numeric_limits::is_integer; + const bool numeric_limits::is_exact; + const int numeric_limits::radix; + const int numeric_limits::min_exponent; + const int numeric_limits::min_exponent10; + const int numeric_limits::max_exponent; + const int numeric_limits::max_exponent10; + const bool numeric_limits::has_infinity; + const bool numeric_limits::has_quiet_NaN; + const bool numeric_limits::has_signaling_NaN; + const float_denorm_style numeric_limits::has_denorm; + const bool numeric_limits::has_denorm_loss; + const bool numeric_limits::is_iec559; + const bool numeric_limits::is_bounded; + const bool numeric_limits::is_modulo; + const bool numeric_limits::traps; + const bool numeric_limits::tinyness_before; + const float_round_style numeric_limits::round_style; + + // int + const bool numeric_limits::is_specialized; + const int numeric_limits::digits; + const int numeric_limits::digits10; + const bool numeric_limits::is_signed; + const bool numeric_limits::is_integer; + const bool numeric_limits::is_exact; + const int numeric_limits::radix; + const int numeric_limits::min_exponent; + const int numeric_limits::min_exponent10; + const int numeric_limits::max_exponent; + const int numeric_limits::max_exponent10; + const bool numeric_limits::has_infinity; + const bool numeric_limits::has_quiet_NaN; + const bool numeric_limits::has_signaling_NaN; + const float_denorm_style numeric_limits::has_denorm; + const bool numeric_limits::has_denorm_loss; + const bool numeric_limits::is_iec559; + const bool numeric_limits::is_bounded; + const bool numeric_limits::is_modulo; + const bool numeric_limits::traps; + const bool numeric_limits::tinyness_before; + const float_round_style numeric_limits::round_style; + + // unsigned int + const bool numeric_limits::is_specialized; + const int numeric_limits::digits; + const int numeric_limits::digits10; + const bool numeric_limits::is_signed; + const bool numeric_limits::is_integer; + const bool numeric_limits::is_exact; + const int numeric_limits::radix; + const int numeric_limits::min_exponent; + const int numeric_limits::min_exponent10; + const int numeric_limits::max_exponent; + const int numeric_limits::max_exponent10; + const bool numeric_limits::has_infinity; + const bool numeric_limits::has_quiet_NaN; + const bool numeric_limits::has_signaling_NaN; + const float_denorm_style numeric_limits::has_denorm; + const bool numeric_limits::has_denorm_loss; + const bool numeric_limits::is_iec559; + const bool numeric_limits::is_bounded; + const bool numeric_limits::is_modulo; + const bool numeric_limits::traps; + const bool numeric_limits::tinyness_before; + const float_round_style numeric_limits::round_style; + + // long + const bool numeric_limits::is_specialized; + const int numeric_limits::digits; + const int numeric_limits::digits10; + const bool numeric_limits::is_signed; + const bool numeric_limits::is_integer; + const bool numeric_limits::is_exact; + const int numeric_limits::radix; + const int numeric_limits::min_exponent; + const int numeric_limits::min_exponent10; + const int numeric_limits::max_exponent; + const int numeric_limits::max_exponent10; + const bool numeric_limits::has_infinity; + const bool numeric_limits::has_quiet_NaN; + const bool numeric_limits::has_signaling_NaN; + const float_denorm_style numeric_limits::has_denorm; + const bool numeric_limits::has_denorm_loss; + const bool numeric_limits::is_iec559; + const bool numeric_limits::is_bounded; + const bool numeric_limits::is_modulo; + const bool numeric_limits::traps; + const bool numeric_limits::tinyness_before; + const float_round_style numeric_limits::round_style; + + // unsigned long + const bool numeric_limits::is_specialized; + const int numeric_limits::digits; + const int numeric_limits::digits10; + const bool numeric_limits::is_signed; + const bool numeric_limits::is_integer; + const bool numeric_limits::is_exact; + const int numeric_limits::radix; + const int numeric_limits::min_exponent; + const int numeric_limits::min_exponent10; + const int numeric_limits::max_exponent; + const int numeric_limits::max_exponent10; + const bool numeric_limits::has_infinity; + const bool numeric_limits::has_quiet_NaN; + const bool numeric_limits::has_signaling_NaN; + const float_denorm_style numeric_limits::has_denorm; + const bool numeric_limits::has_denorm_loss; + const bool numeric_limits::is_iec559; + const bool numeric_limits::is_bounded; + const bool numeric_limits::is_modulo; + const bool numeric_limits::traps; + const bool numeric_limits::tinyness_before; + const float_round_style numeric_limits::round_style; + + // XXX: Extensions + #ifdef _GLIBCPP_USE_LONG_LONG + const bool numeric_limits::is_specialized; + const int numeric_limits::digits; + const int numeric_limits::digits10; + const bool numeric_limits::is_signed; + const bool numeric_limits::is_integer; + const bool numeric_limits::is_exact; + const int numeric_limits::radix; + const int numeric_limits::min_exponent; + const int numeric_limits::min_exponent10; + const int numeric_limits::max_exponent; + const int numeric_limits::max_exponent10; + const bool numeric_limits::has_infinity; + const bool numeric_limits::has_quiet_NaN; + const bool numeric_limits::has_signaling_NaN; + const float_denorm_style numeric_limits::has_denorm; + const bool numeric_limits::has_denorm_loss; + const bool numeric_limits::is_iec559; + const bool numeric_limits::is_bounded; + const bool numeric_limits::is_modulo; + const bool numeric_limits::traps; + const bool numeric_limits::tinyness_before; + const float_round_style numeric_limits::round_style; + + const bool numeric_limits::is_specialized; + const int numeric_limits::digits; + const int numeric_limits::digits10; + const bool numeric_limits::is_signed; + const bool numeric_limits::is_integer; + const bool numeric_limits::is_exact; + const int numeric_limits::radix; + const int numeric_limits::min_exponent; + const int numeric_limits::min_exponent10; + const int numeric_limits::max_exponent; + const int numeric_limits::max_exponent10; + const bool numeric_limits::has_infinity; + const bool numeric_limits::has_quiet_NaN; + const bool numeric_limits::has_signaling_NaN; + const float_denorm_style numeric_limits::has_denorm; + const bool numeric_limits::has_denorm_loss; + const bool numeric_limits::is_iec559; + const bool numeric_limits::is_bounded; + const bool numeric_limits::is_modulo; + const bool numeric_limits::traps; + const bool numeric_limits::tinyness_before; + const float_round_style numeric_limits::round_style; + #endif // _GLIBCPP_USE_LONG_LONG + + // float + const bool numeric_limits::is_specialized; + const int numeric_limits::digits; + const int numeric_limits::digits10; + const bool numeric_limits::is_signed; + const bool numeric_limits::is_integer; + const bool numeric_limits::is_exact; + const int numeric_limits::radix; + const int numeric_limits::min_exponent; + const int numeric_limits::min_exponent10; + const int numeric_limits::max_exponent; + const int numeric_limits::max_exponent10; + const bool numeric_limits::has_infinity; + const bool numeric_limits::has_quiet_NaN; + const bool numeric_limits::has_signaling_NaN; + const float_denorm_style numeric_limits::has_denorm; + const bool numeric_limits::has_denorm_loss; + const bool numeric_limits::is_iec559; + const bool numeric_limits::is_bounded; + const bool numeric_limits::is_modulo; + const bool numeric_limits::traps; + const bool numeric_limits::tinyness_before; + const float_round_style numeric_limits::round_style; + + // double + const bool numeric_limits::is_specialized; + const int numeric_limits::digits; + const int numeric_limits::digits10; + const bool numeric_limits::is_signed; + const bool numeric_limits::is_integer; + const bool numeric_limits::is_exact; + const int numeric_limits::radix; + const int numeric_limits::min_exponent; + const int numeric_limits::min_exponent10; + const int numeric_limits::max_exponent; + const int numeric_limits::max_exponent10; + const bool numeric_limits::has_infinity; + const bool numeric_limits::has_quiet_NaN; + const bool numeric_limits::has_signaling_NaN; + const float_denorm_style numeric_limits::has_denorm; + const bool numeric_limits::has_denorm_loss; + const bool numeric_limits::is_iec559; + const bool numeric_limits::is_bounded; + const bool numeric_limits::is_modulo; + const bool numeric_limits::traps; + const bool numeric_limits::tinyness_before; + const float_round_style numeric_limits::round_style; + + // long double + const bool numeric_limits::is_specialized; + const int numeric_limits::digits; + const int numeric_limits::digits10; + const bool numeric_limits::is_signed; + const bool numeric_limits::is_integer; + const bool numeric_limits::is_exact; + const int numeric_limits::radix; + const int numeric_limits::min_exponent; + const int numeric_limits::min_exponent10; + const int numeric_limits::max_exponent; + const int numeric_limits::max_exponent10; + const bool numeric_limits::has_infinity; + const bool numeric_limits::has_quiet_NaN; + const bool numeric_limits::has_signaling_NaN; + const float_denorm_style numeric_limits::has_denorm; + const bool numeric_limits::has_denorm_loss; + const bool numeric_limits::is_iec559; + const bool numeric_limits::is_bounded; + const bool numeric_limits::is_modulo; + const bool numeric_limits::traps; + const bool numeric_limits::tinyness_before; + const float_round_style numeric_limits::round_style; + } // namespace std + + diff -Nrc3pad gcc-3.0/libstdc++-v3/src/locale.cc gcc-3.0.1/libstdc++-v3/src/locale.cc *** gcc-3.0/libstdc++-v3/src/locale.cc Mon Jun 4 12:30:55 2001 --- gcc-3.0.1/libstdc++-v3/src/locale.cc Thu Jul 19 17:14:10 2001 *************** namespace std *** 601,606 **** --- 601,607 ---- return __hi; } + template<> ctype_byname::ctype_byname(const char* /*__s*/, size_t __refs) : ctype(new mask[table_size], true, __refs) { } *************** namespace std *** 1000,1010 **** --- 1001,1014 ---- return __incl_prec; } + template <> collate::collate(size_t __refs) : locale::facet(__refs) { } + template<> collate::~collate() { } + template<> int collate::do_compare(const char* __lo1, const char* __hi1, const char* __lo2, const char* __hi2) const *************** namespace std *** 1020,1030 **** --- 1024,1036 ---- return 0; } + template<> string collate:: do_transform(const char* __lo, const char* __hi) const { return string(__lo, __hi - __lo); } + template<> long collate:: do_hash(const char* __lo, const char* __hi) const *************** namespace std *** 1035,1052 **** (__val >> (numeric_limits::digits - 1))); return __val; } ! collate_byname::collate_byname(const char* /*__s*/, size_t __refs) : collate(__refs) { } moneypunct_byname::moneypunct_byname(const char* /*__s*/, size_t __refs) : moneypunct(__refs) { } moneypunct_byname::moneypunct_byname(const char* /*__s*/, size_t __refs) : moneypunct(__refs) { } messages_byname:: messages_byname(const char* /*__s*/, size_t __refs) : messages(__refs) { } --- 1041,1062 ---- (__val >> (numeric_limits::digits - 1))); return __val; } ! ! template<> collate_byname::collate_byname(const char* /*__s*/, size_t __refs) : collate(__refs) { } + template<> moneypunct_byname::moneypunct_byname(const char* /*__s*/, size_t __refs) : moneypunct(__refs) { } + template<> moneypunct_byname::moneypunct_byname(const char* /*__s*/, size_t __refs) : moneypunct(__refs) { } + template<> messages_byname:: messages_byname(const char* /*__s*/, size_t __refs) : messages(__refs) { } *************** namespace std *** 1203,1218 **** --- 1213,1232 ---- return __hi; } + template<> ctype_byname:: ctype_byname(const char* /*__s*/, size_t __refs) : ctype(__refs) { } + template<> collate:: collate(size_t __refs): locale::facet(__refs) { } + template<> collate:: ~collate() { } + template<> int collate:: do_compare(const wchar_t* /*__lo1*/, const wchar_t* /*__hi1*/, *************** namespace std *** 1220,1242 **** { return 0; // XXX not done } ! wstring collate:: do_transform(const wchar_t* /*__lo*/, const wchar_t* /*__hi*/) const { return wstring(); // XXX not done } long collate:: do_hash(const wchar_t* /*__lo*/, const wchar_t* /*__hi*/) const { return 0; // XXX not done } collate_byname:: collate_byname(const char* /*__s*/, size_t __refs) : collate (__refs) { } messages_byname:: messages_byname(const char* /*__s*/, size_t __refs) : messages (__refs) { } --- 1234,1260 ---- { return 0; // XXX not done } ! ! template<> wstring collate:: do_transform(const wchar_t* /*__lo*/, const wchar_t* /*__hi*/) const { return wstring(); // XXX not done } + template<> long collate:: do_hash(const wchar_t* /*__lo*/, const wchar_t* /*__hi*/) const { return 0; // XXX not done } + template<> collate_byname:: collate_byname(const char* /*__s*/, size_t __refs) : collate (__refs) { } + template<> messages_byname:: messages_byname(const char* /*__s*/, size_t __refs) : messages (__refs) { } diff -Nrc3pad gcc-3.0/libstdc++-v3/src/strstream.cc gcc-3.0.1/libstdc++-v3/src/strstream.cc *** gcc-3.0/libstdc++-v3/src/strstream.cc Mon May 14 12:49:15 2001 --- gcc-3.0.1/libstdc++-v3/src/strstream.cc Wed Jun 27 10:12:28 2001 *************** *** 1,3 **** --- 1,33 ---- + // strstream definitions -*- C++ -*- + + // Copyright (C) 2001 Free Software Foundation + // + // This file is part of GNU CC. + // + // GNU CC is free software; you can redistribute it and/or modify + // it under the terms of the GNU General Public License as published by + // the Free Software Foundation; either version 2, or (at your option) + // any later version. + // + // GNU CC is distributed in the hope that it will be useful, + // but WITHOUT ANY WARRANTY; without even the implied warranty of + // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + // GNU General Public License for more details. + // + // You should have received a copy of the GNU General Public License + // along with GNU CC; see the file COPYING. If not, write to + // the Free Software Foundation, 59 Temple Place - Suite 330, + // Boston, MA 02111-1307, USA. + + // As a special exception, you may use this file as part of a free software + // library without restriction. Specifically, if other files instantiate + // templates or use macros or inline functions from this file, or you compile + // this file and link it with other files to produce an executable, this + // file does not by itself cause the resulting executable to be covered by + // the GNU General Public License. This exception does not however + // invalidate any other reasons why the executable file might be covered by + // the GNU General Public License. + /* * Copyright (c) 1998 * Silicon Graphics Computer Systems, Inc. diff -Nrc3pad gcc-3.0/libstdc++-v3/testsuite/21_strings/ctor_copy_dtor.cc gcc-3.0.1/libstdc++-v3/testsuite/21_strings/ctor_copy_dtor.cc *** gcc-3.0/libstdc++-v3/testsuite/21_strings/ctor_copy_dtor.cc Mon May 14 12:49:18 2001 --- gcc-3.0.1/libstdc++-v3/testsuite/21_strings/ctor_copy_dtor.cc Fri Jul 13 13:55:54 2001 *************** *** 1,6 **** // 1999-06-04 bkoz ! // Copyright (C) 1999, 2000 Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the --- 1,6 ---- // 1999-06-04 bkoz ! // Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the *************** void test02() *** 176,184 **** --- 176,203 ---- #endif } + void test03() + { + bool test = true; + const char* with_nulls = "This contains \0 a zero byte."; + + // These are tests to see how basic_string handles data with NUL + // bytes. Obviously basic_string(char*) will halt at the first one, but + // nothing else should. + std::string s1 (with_nulls, 28); + VERIFY( s1.size() == 28 ); + std::string s2 (s1); + VERIFY( s2.size() == 28 ); + + #ifdef DEBUG_ASSERT + assert(test); + #endif + } + int main() { test01(); test02(); + test03(); return 0; } diff -Nrc3pad gcc-3.0/libstdc++-v3/testsuite/27_io/stringbuf.cc gcc-3.0.1/libstdc++-v3/testsuite/27_io/stringbuf.cc *** gcc-3.0/libstdc++-v3/testsuite/27_io/stringbuf.cc Mon May 14 12:49:26 2001 --- gcc-3.0.1/libstdc++-v3/testsuite/27_io/stringbuf.cc Fri Jul 13 13:55:54 2001 *************** *** 1,6 **** // 981208 bkoz test functionality of basic_stringbuf for char_type == char ! // Copyright (C) 1997-1999, 2000 Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the --- 1,6 ---- // 981208 bkoz test functionality of basic_stringbuf for char_type == char ! // Copyright (C) 1997-2001 Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the *************** bool test02() { *** 54,60 **** // test member functions bool test03() { bool test = true; - std::string str_tmp; //stringbuf::str() VERIFY( strb_01.str() == str_01 ); --- 54,59 ---- *************** bool test03() { *** 71,76 **** --- 70,87 ---- VERIFY( d1 != d2 ); //these should be the same VERIFY( str_01.length() == d1 ); VERIFY( strb_01.str() == strb_03.str() ); //ditto + + // stringbuf::str(string&) and stringbuf::stringbuf(string&), where the + // string in question contains embedded NUL characters. Note that in this + // embedded-NUL situation, the size must be passed to the string ctor. + std::string str_nulls ("eschew \0 obfuscation", 20); // tested in 21_strings + std::stringbuf strb_normal (str_01); + std::stringbuf strb_nulls (str_nulls); + strb_normal.str(str_nulls); // tried using 'strb_01' rather than declaring + // another variable, but then test04 broke! + VERIFY( strb_nulls.in_avail() == str_nulls.size() ); + VERIFY( strb_nulls.str().size() == 20 ); + VERIFY( strb_normal.in_avail() == str_nulls.size() ); #ifdef DEBUG_ASSERT assert(test); diff -Nrc3pad gcc-3.0/libstdc++-v3/testsuite/Makefile.in gcc-3.0.1/libstdc++-v3/testsuite/Makefile.in *** gcc-3.0/libstdc++-v3/testsuite/Makefile.in Mon May 14 12:49:16 2001 --- gcc-3.0.1/libstdc++-v3/testsuite/Makefile.in Mon Aug 13 15:22:27 2001 *************** target_alias = @target_alias@ *** 65,74 **** target_triplet = @target@ AR = @AR@ AS = @AS@ CC = @CC@ CPP = @CPP@ CSHADOW_FLAGS = @CSHADOW_FLAGS@ ! CSTD_INCLUDES = @CSTD_INCLUDES@ CXX = @CXX@ CXXCPP = @CXXCPP@ C_INCLUDE_DIR = @C_INCLUDE_DIR@ --- 65,78 ---- target_triplet = @target@ AR = @AR@ AS = @AS@ + ATOMICITY_INC_SRCDIR = @ATOMICITY_INC_SRCDIR@ + BASIC_FILE_H = @BASIC_FILE_H@ CC = @CC@ + CCODECVT_C = @CCODECVT_C@ + CLOCALE_H = @CLOCALE_H@ CPP = @CPP@ CSHADOW_FLAGS = @CSHADOW_FLAGS@ ! CSTDIO_H = @CSTDIO_H@ CXX = @CXX@ CXXCPP = @CXXCPP@ C_INCLUDE_DIR = @C_INCLUDE_DIR@ *************** EXEEXT = @EXEEXT@ *** 78,84 **** EXTRA_CXX_FLAGS = @EXTRA_CXX_FLAGS@ GCJ = @GCJ@ GCJFLAGS = @GCJFLAGS@ ! GLIBCPP_INCLUDE_DIR = @GLIBCPP_INCLUDE_DIR@ LIBIO_INCLUDES = @LIBIO_INCLUDES@ LIBMATHOBJS = @LIBMATHOBJS@ LIBMATH_INCLUDES = @LIBMATH_INCLUDES@ --- 82,89 ---- EXTRA_CXX_FLAGS = @EXTRA_CXX_FLAGS@ GCJ = @GCJ@ GCJFLAGS = @GCJFLAGS@ ! GLIBCPP_INCLUDES = @GLIBCPP_INCLUDES@ ! GLIBCPP_IS_CROSS_COMPILING = @GLIBCPP_IS_CROSS_COMPILING@ LIBIO_INCLUDES = @LIBIO_INCLUDES@ LIBMATHOBJS = @LIBMATHOBJS@ LIBMATH_INCLUDES = @LIBMATH_INCLUDES@ *************** LIBSTRINGOBJS = @LIBSTRINGOBJS@ *** 86,91 **** --- 91,97 ---- LIBSUPCXX_INCLUDES = @LIBSUPCXX_INCLUDES@ LIBSUPCXX_PICFLAGS = @LIBSUPCXX_PICFLAGS@ LIBTOOL = @LIBTOOL@ + LIMITS_INC_SRCDIR = @LIMITS_INC_SRCDIR@ LN_S = @LN_S@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ *************** OBJDUMP = @OBJDUMP@ *** 93,98 **** --- 99,105 ---- OBJEXT = @OBJEXT@ OPTIMIZE_CXXFLAGS = @OPTIMIZE_CXXFLAGS@ OPT_LDFLAGS = @OPT_LDFLAGS@ + OS_INC_SRCDIR = @OS_INC_SRCDIR@ PACKAGE = @PACKAGE@ RANLIB = @RANLIB@ SECTION_FLAGS = @SECTION_FLAGS@ *************** glibcpp_basedir = @glibcpp_basedir@ *** 110,115 **** --- 117,123 ---- glibcpp_builddir = @glibcpp_builddir@ glibcpp_prefixdir = @glibcpp_prefixdir@ glibcpp_srcdir = @glibcpp_srcdir@ + glibcpp_thread_h = @glibcpp_thread_h@ glibcpp_toolexecdir = @glibcpp_toolexecdir@ glibcpp_toolexeclibdir = @glibcpp_toolexeclibdir@ gxx_include_dir = @gxx_include_dir@ diff -Nrc3pad gcc-3.0/libstdc++-v3/testsuite_flags.in gcc-3.0.1/libstdc++-v3/testsuite_flags.in *** gcc-3.0/libstdc++-v3/testsuite_flags.in Mon May 14 12:48:53 2001 --- gcc-3.0.1/libstdc++-v3/testsuite_flags.in Thu Jul 26 00:52:19 2001 *************** case ${query} in *** 32,43 **** echo ${INCLUDES} ;; --build-includes) ! C_DIR="`basename @C_INCLUDE_DIR@`" ! INCLUDES="-nostdinc++ -I${BUILD_DIR}/include -I${SRC_DIR}/include ! -I${SRC_DIR}/include/std -I${SRC_DIR}/include/$C_DIR ! -I${SRC_DIR}/libsupc++ -I${SRC_DIR}/libio ! -I${SRC_DIR}/testsuite ! -I${SRC_DIR}/include/backwards -I${SRC_DIR}/include/ext" echo ${INCLUDES} ;; --install-cxx) --- 32,40 ---- echo ${INCLUDES} ;; --build-includes) ! INCLUDES="-nostdinc++ @GLIBCPP_INCLUDES@ ! -I${SRC_DIR}/libsupc++ -I${SRC_DIR}/libio ! -I${SRC_DIR}/testsuite" echo ${INCLUDES} ;; --install-cxx)