platform/upstream/gcc.git
23 years ago* cppmain.c (scan_buffer): Don't avoid paste for assembly.
Richard Henderson [Wed, 1 Nov 2000 08:53:36 +0000 (00:53 -0800)]
* cppmain.c (scan_buffer): Don't avoid paste for assembly.

From-SVN: r37184

23 years agoDaily bump.
Jeff Law [Wed, 1 Nov 2000 08:45:07 +0000 (01:45 -0700)]
Daily bump.

From-SVN: r37183

23 years agoc-parse.in (_yylex): Remove CPP_BACKSLASH case.
Neil Booth [Wed, 1 Nov 2000 07:32:23 +0000 (07:32 +0000)]
c-parse.in (_yylex): Remove CPP_BACKSLASH case.

* c-parse.in (_yylex): Remove CPP_BACKSLASH case.
* cp/spew.c: Similarly.
* cpplex.c (_cpp_lex_token): Backslashes are now CPP_OTHER.
* cppmacro.c (stringify_arg): Similarly.
* cpplib.h (CPP_BACKSLASH): Delete.

From-SVN: r37182

23 years agobuiltins.c (expand_builtin_strstr): New function.
Kaveh R. Ghazi [Wed, 1 Nov 2000 03:22:21 +0000 (03:22 +0000)]
builtins.c (expand_builtin_strstr): New function.

* builtins.c (expand_builtin_strstr): New function.
(expand_builtin): Handle BUILT_IN_STRSTR and BUILT_IN_STRCHR.

* builtins.def (BUILT_IN_STRSTR, BUILT_IN_STRCHR): New entries.

* c-common.c (c_common_nodes_and_builtins): Declare builtin strstr
and builtin strchr.

From-SVN: r37181

23 years agogcc_build (MAKE): New variable.
Mark Mitchell [Wed, 1 Nov 2000 01:58:12 +0000 (01:58 +0000)]
gcc_build (MAKE): New variable.

* gcc_build (MAKE): New variable.
(build_gcc): Use it.  Fix logging of errors.
(install_gcc): Likewise.

From-SVN: r37180

23 years agoi386.c (fcmov_comparison_operator): Check for CCFPmode or CCFPUmode instead of CCmode.
Richard Henderson [Wed, 1 Nov 2000 01:52:52 +0000 (17:52 -0800)]
i386.c (fcmov_comparison_operator): Check for CCFPmode or CCFPUmode instead of CCmode.

        * config/i386/i386.c (fcmov_comparison_operator): Check for
        CCFPmode or CCFPUmode instead of CCmode.
        (ix86_expand_fp_movcc): Call ix86_expand_setcc for most
        unordered operations as well.

From-SVN: r37179

23 years agoc-semantics.c (genrtl_do_stmt): Use integer_zerop instead of integer_zero_node.
Richard Henderson [Wed, 1 Nov 2000 01:48:12 +0000 (17:48 -0800)]
c-semantics.c (genrtl_do_stmt): Use integer_zerop instead of integer_zero_node.

        * c-semantics.c (genrtl_do_stmt): Use integer_zerop instead
        of integer_zero_node.

From-SVN: r37178

23 years ago* c-semantics.c (genrtl_do_stmt): Special case do/while(0).
Richard Henderson [Wed, 1 Nov 2000 01:31:06 +0000 (17:31 -0800)]
* c-semantics.c (genrtl_do_stmt): Special case do/while(0).

From-SVN: r37177

23 years agoDo not allow -fdata-sections to override the section attribute of a DECL.
Nick Clifton [Wed, 1 Nov 2000 01:23:56 +0000 (01:23 +0000)]
Do not allow -fdata-sections to override the section attribute of a DECL.

From-SVN: r37176

23 years agolibgcc2.c (__shtab): Remove __shtab variable.
Chris Demetriou [Wed, 1 Nov 2000 00:43:16 +0000 (00:43 +0000)]
libgcc2.c (__shtab): Remove __shtab variable.

* libgcc2.c (__shtab): Remove __shtab variable.
* libgcc-std.ver (GCC_3.0): Remove __shtab from symbol list.
* Makefile.in (LIB2FUNCS): Remove _shtab from list of library
members.

From-SVN: r37175

23 years agoMake ia64 port use tags instead of labels for debug info labels.
Jim Wilson [Wed, 1 Nov 2000 00:20:34 +0000 (00:20 +0000)]
Make ia64 port use tags instead of labels for debug info labels.

* defaults.h (ASM_OUTPUT_DEBUG_LABEL): New.
* tm.texi (ASM_OUTPUT_DEBUG_LABEL): Document.
* dwarf2out.c (dwarf2out_begin_block): Use ASM_OUTPUT_DEBUG_LABEL
instead of ASM_OUTPUT_INTERNAL_LABEL.
(dwarf2out_end_block, dwarf2out_label): Likewise.
* final.c (final_scan_insn, case NOTE_INSN_DELETED_LABEL): Likewise
* config/ia64/ia64.h (ASM_OUTPUT_DEBUG_LABEL): Define.

From-SVN: r37174

23 years agojni.cc: Added include of java/lang/ThreadGroup.h.
Warren Levy [Wed, 1 Nov 2000 00:18:03 +0000 (00:18 +0000)]
jni.cc: Added include of java/lang/ThreadGroup.h.

* jni.cc: Added include of java/lang/ThreadGroup.h.
* gcj/javaprims.h: Removed Replaceable and Resolvable from namespace
per change of 2000-10-05.

From-SVN: r37173

23 years agodwarf2out.c (struct dw_loc_descr_struct): Add dw_loc_addr.
Richard Henderson [Wed, 1 Nov 2000 00:12:15 +0000 (16:12 -0800)]
dwarf2out.c (struct dw_loc_descr_struct): Add dw_loc_addr.

        * dwarf2out.c (struct dw_loc_descr_struct): Add dw_loc_addr.
        (size_of_locs): Set it.
        (output_loc_operands): Use it to compute branch displacement.
        (int_loc_descriptor): New.
        (mem_loc_descriptor): Dereference memory in the proper size.
        Use DW_OP_plus_uconst when possible.  Use int_loc_descriptor.
        (loc_descriptor_from_tree): New.
        (rtl_for_decl_location): Break out from ...
        (add_location_or_const_value_attribute): ... here.
        (add_bound_info): Use loc_descriptor_from_tree.

From-SVN: r37172

23 years agocpp.texi: Update for new command line assertion syntax.
Neil Booth [Tue, 31 Oct 2000 23:34:59 +0000 (23:34 +0000)]
cpp.texi: Update for new command line assertion syntax.

* cpp.texi: Update for new command line assertion syntax.
* cpplib.c (cpp_define): Simplify a bit.
(cpp_assert, cpp_unassert): Use handle_assertion.
(handle_assertion): New function; accept new command line
syntax with '='.
* testsuite/gcc.dg/cpp/assert3.c: New tests.

From-SVN: r37171

23 years ago* Forgot to update ChangeLog.
Neil Booth [Tue, 31 Oct 2000 22:58:02 +0000 (22:58 +0000)]
* Forgot to update ChangeLog.

From-SVN: r37170

23 years ago*** empty log message ***
Benjamin Kosnik [Tue, 31 Oct 2000 22:33:26 +0000 (22:33 +0000)]
*** empty log message ***

From-SVN: r37169

23 years ago920501-7.c: Remove 'CYGNUS LOCAL' markers.
Geoff Keating [Tue, 31 Oct 2000 22:30:13 +0000 (22:30 +0000)]
920501-7.c: Remove 'CYGNUS LOCAL' markers.

* gcc.c-torture/compile/920501-7.c: Remove 'CYGNUS LOCAL' markers.
* gcc.c-torture/execute/ieee/rbug.c: Remove 'CYGNUS LOCAL' markers.

From-SVN: r37168

23 years ago* gcc.c-torture/execute/va-arg-21.c: New test.
Kaveh R. Ghazi [Tue, 31 Oct 2000 21:30:22 +0000 (21:30 +0000)]
* gcc.c-torture/execute/va-arg-21.c: New test.

From-SVN: r37167

23 years agoi386.h: Clarify CCNOmode description in comment.
Jan Hubicka [Tue, 31 Oct 2000 20:50:30 +0000 (21:50 +0100)]
i386.h: Clarify CCNOmode description in comment.

* config/i386/i386.h: Clarify CCNOmode description in comment.
(EXTRA_CC_MODES): Remove CCRCmode.
* config/i386/i386.c (ix86_comparison_operator): Remove CCRCmode.
(put_condition_code, ix86_match_ccmode): Likewise.
(ix86_cc_mode): Likewise.  Fix comment.
(ix86_expand_strlensi_unroll_1): *rc patterns are gone.
* config/i386/i386.md: Add unspec 12 description.
(adddi3 split): Use unspec 12 instead of CCRCmode.
(addsi3_carry_rc): Remove.
(addsi3_cc, addqi3_cc): New patterns.
(addsi_3): Swap operands, match CCZmode.
(addsi_4): Rewritten.
(addsi_5): Renamed from addsi_6.
(addsi_6): Removed.
(addhi_3): Swap operands, match CCZmode.
(addhi_4): Rewritten.
(addhi_5): Renamed from addhi_6.
(addhi_6): Removed.
(addqi_3): Swap operands, match CCZmode.
(addqi_4): Rewritten.
(addqi_5): Renamed from addqi_6.  Use =q constraint for clobber.
(subsi3_carry_rc): Removed.
(iorqi_3): Use =q constraint for clobber.
(xorqi_cc_2): Likewise.
(negdi2_1 split): Don't use CCRCmode, use ltu instead of gtu.
(x86_movsicc_0_m1_rc): Removed.
(cmp?i peepholes): Remove neg.  Use CCGCmode instead of CCRCmode.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r37166

23 years agostd_complex.h (norm): Forward declare.
Gabriel Dos Reis [Tue, 31 Oct 2000 20:49:01 +0000 (20:49 +0000)]
std_complex.h (norm): Forward declare.

* include/bits/std_complex.h (norm): Forward declare.
(complex<>): Comment out friend declaration of conj<>.
(conj<>): Comment out specialization.
(exp, log, log10): Define primary templates.

* src/complex.cc (exp<>, log<>, log10<>): Comment out
specializations.

From-SVN: r37165

23 years agoc-typeck.c (build_unary_op): If pedantic, pedwarn for increment and decrement of...
Joseph Myers [Tue, 31 Oct 2000 20:38:04 +0000 (20:38 +0000)]
c-typeck.c (build_unary_op): If pedantic, pedwarn for increment and decrement of complex types.

* c-typeck.c (build_unary_op): If pedantic, pedwarn for increment
and decrement of complex types.

testsuite:
* gcc.dg/c99-complex-2.c: New test.

From-SVN: r37164

23 years agocppmacro.c (STDC_0_IN_SYSTEM_HEADERS): Define to 0 if undefined.
Neil Booth [Tue, 31 Oct 2000 19:59:44 +0000 (19:59 +0000)]
cppmacro.c (STDC_0_IN_SYSTEM_HEADERS): Define to 0 if undefined.

* cppmacro.c (STDC_0_IN_SYSTEM_HEADERS): Define to 0 if
undefined.  Remove #ifdef check.
* config/i386/sol2.h, config/rs6000/sol2.h, config/sparc/sol2.h:
Define STDC_0_IN_SYSTEM_HEADERS to 1.

From-SVN: r37163

23 years agobuiltins.c (expand_builtin_fputs): When deleting NOP calls to builtin fputs...
Kaveh R. Ghazi [Tue, 31 Oct 2000 18:27:42 +0000 (18:27 +0000)]
builtins.c (expand_builtin_fputs): When deleting NOP calls to builtin fputs...

* builtins.c (expand_builtin_fputs): When deleting NOP calls to
builtin fputs, ensure we still evaluate the stream in case it
has side-effects.

testsuite:
* gcc.c-torture/execute/stdio-opt-1.c: New test.

From-SVN: r37162

23 years agostd_complex.h: Remove duplicate definition of conj.
Benjamin Kosnik [Tue, 31 Oct 2000 18:11:31 +0000 (18:11 +0000)]
std_complex.h: Remove duplicate definition of conj.

2000-10-31  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

* include/bits/std_complex.h: Remove duplicate definition of conj.
* include/c/bits/std_cwctype.h: Consistent placement of undefs.

From-SVN: r37161

23 years agoexpr.c (do_store_flag): Pass operand_mode instead of GET_MODE (op0) to expand_shift.
Jakub Jelinek [Tue, 31 Oct 2000 16:02:45 +0000 (17:02 +0100)]
expr.c (do_store_flag): Pass operand_mode instead of GET_MODE (op0) to expand_shift.

* expr.c (do_store_flag): Pass operand_mode instead of GET_MODE (op0)
to expand_shift.

* g++.old-deja/g++.other/inline16.C: New test.

From-SVN: r37160

23 years agocomplex.cc (arg, polar): Comment out specializations.
Gabriel Dos Reis [Tue, 31 Oct 2000 15:54:00 +0000 (15:54 +0000)]
complex.cc (arg, polar): Comment out specializations.

* src/complex.cc (arg, polar): Comment out specializations.

* include/bits/std_complex.h (complex<>): Remove arg<> friend
declaration.
(arg): Define primary template.
(polar): Likewise.
(conj): Likewise.

From-SVN: r37159

23 years agosh-protos.h (reg_no_subreg_operand, [...]): Don't declare.
J"orn Rennecke [Tue, 31 Oct 2000 15:34:27 +0000 (15:34 +0000)]
sh-protos.h (reg_no_subreg_operand, [...]): Don't declare.

* sh-protos.h (reg_no_subreg_operand, emit_fpscr_use): Don't declare.
(fp_extended_operand, emit_fpscr_use): Likewise.
* sh.c (reg_no_subreg_operand, fp_extended_operand): Delete functions.
(fpul_operand): New function.
* sh.h (PREDICATE_CODES): Remove reg_no_subreg_operand and
fp_extended_operand.  Add fpul_operand.
* sh.md (mulsf3, mulsf3_i4): Use fp_arith_reg_operand for "f" operands.
(mulsf3_ie, macsf3, cmpgtsf_t, cmpeqsf_t, ieee_ccmpeqsf_t): Likewise.
(cmpgtsf_t_i4, cmpeqsf_t_i4, ieee_ccmpeqsf_t_4, negsf2): Likewise.
(negsf2_i, sqrtsf2, sqrtsf2_i, abssf2, abssf2_i, adddf3): Likewise.
(adddf3_i, subdf3, subdf3_i, muldf3, muldf3_i, divdf3): Likewise.
(divdf3_i): Likewise.
(floatsisf2): Likewise.  Use fpul_operand for 'y' operand.
(floatsisf2_i4, floatsisf2_ie, fix_truncsfsi2): Likewise.
(fix_truncsfsi2_i4, fixsfsi, floatsidf2, floatsidf2_i): Likewise.
(fix_truncdfsi2, fix_truncdfsi2_i, extendsfdf2): Likewise.
(extendsfdf2_i4, truncdfsf2, truncdfsf2_i4): Likewise.

From-SVN: r37158

23 years agostd_cwctype.h: #undef possible function-like macro definitions of iswxxx functions...
Gabriel Dos Reis [Tue, 31 Oct 2000 14:40:27 +0000 (14:40 +0000)]
std_cwctype.h: #undef possible function-like macro definitions of iswxxx functions...

* include/c/bits/std_cwctype.h: #undef possible function-like
macro definitions of iswxxx functions, which might be brought in
by <wctype.h>.  Those macro definitions prevent build on some
linux-based systems.

* include/bits/std_complex.h (complex<>): Comment out friend
declarations of abs<> specializations.
(abs): Define primary template.

* src/complex.cc (abs): Comment out specialization definition.

From-SVN: r37157

23 years agoBetter .greg dump
Bernd Schmidt [Tue, 31 Oct 2000 10:09:34 +0000 (10:09 +0000)]
Better .greg dump

From-SVN: r37156

23 years agoFix crashes in split_all_insns
Bernd Schmidt [Tue, 31 Oct 2000 10:06:49 +0000 (10:06 +0000)]
Fix crashes in split_all_insns

From-SVN: r37155

23 years agoMMX/SSE bugfixes
Bernd Schmidt [Tue, 31 Oct 2000 10:04:44 +0000 (10:04 +0000)]
MMX/SSE bugfixes

From-SVN: r37154

23 years agoDaily bump.
Jeff Law [Tue, 31 Oct 2000 08:45:09 +0000 (01:45 -0700)]
Daily bump.

From-SVN: r37153

23 years agomemtemp77.C (main): Adjust comparison against.
Gabriel Dos Reis [Tue, 31 Oct 2000 08:43:17 +0000 (08:43 +0000)]
memtemp77.C (main): Adjust comparison against.

testsuite/
* g++.old-deja/g++.pt/memtemp77.C (main): Adjust comparison against.
__PRETTY_FUNCTION__

cp/
* error.c: Move TFF_ macros into cp-tree.h.  Throughout, replace
TS_* flags with corresponding TFF_*.  Adjust prototypes of
functions (which used to take a tree_string_flags) to take an int.

* cp-tree.h (enum tree_string_flags): Remove
(TFF_PLAIN_IDENTIFIER, TFF_NAMESPACE_SCOPE, TFF_CLASS_SCOPE,
TFF_CHASE_NAMESPACE_ALIAS, TFF_CHASE_TYPEDEF, TFF_DECL_SPECIFIERS,
TFF_CLASS_KEY_OR_ENUM, TFF_RETURN_TYPE,
TFF_FUNCTION_DEFAULT_ARGUMENTS, TFF_EXCEPTION_SPECIFICATION,
TFF_TEMPLATE_HEADER, TFF_TEMPLATE_DEFAULT_ARGUMENTS,
TFF_TEMPLATE_NAME, TFF_EXPR_IN_PARENS, TFF_SCOPE): New macros.
(type_as_string, decl_as_string, expr_as_string,
context_as_string): Adjust prototype.

* class.c (dump_class_hierarchy_r): Use TFF_PLAIN_IDENTIFIER
instead of TS_PLAIN.

* pt.c (mangle_class_name_for_template): Use TFF_CHASE_TYPEDEF
instead of TF_CHASE_TYPEDEFS. Use TFF_PLAIN_IDENTIFIER instead of
plain `0'.

From-SVN: r37152

23 years agoacinclude.m4 (GLIBCPP_ENABLE_DEBUG): Raise debugging level from the default of 2...
Phil Edwards [Tue, 31 Oct 2000 01:56:19 +0000 (01:56 +0000)]
acinclude.m4 (GLIBCPP_ENABLE_DEBUG): Raise debugging level from the default of 2 to 3.

2000-10-30  Phil Edwards  <pme@sources.redhat.com>

* acinclude.m4 (GLIBCPP_ENABLE_DEBUG):  Raise debugging level from
  the default of 2 to 3.
* configure.in:  Fix minor typos.  SUBST the values of enable_shared
  and enable_static so that mkcheck will be aware of them.  Put the
  test for gconv.h in with all the other header tests.
* aclocal.m4:  Regenerate.
* configure:  Ditto.
* Makefile.in:  Ditto.
* libio/Makefile.in:  Ditto.
* libmath/Makefile.in:  Ditto.
* libsupc++/Makefile.in:  Ditto.
* src/Makefile.in:  Ditto.

* config/os/solaris/solaris2.7/bits/os_defines.h:  Define
  _G_USING_THUNKS to 0.

From-SVN: r37151

23 years agocp-tree.h (DECL_EXTERNAL_LINKAGE_P): New macro.
Mark Mitchell [Tue, 31 Oct 2000 01:30:59 +0000 (01:30 +0000)]
cp-tree.h (DECL_EXTERNAL_LINKAGE_P): New macro.

* cp-tree.h (DECL_EXTERNAL_LINKAGE_P): New macro.
(linkage_kind): New enumeration.
(decl_linkage): New function.
* decl2.c (comdat_linkage): Extend comment.
* error.c (dump_function_decl): Print the arguments used to
instantiate a template, even when not printing the type of the
function.
* pt.c (convert_nontype_argument): Use DECL_EXTERNAL_LINKAGE_P,
not TREE_PUBLIC, to test for external linkage.
* tree.c (decl_linkage): New function.

From-SVN: r37150

23 years ago[multiple changes]
Benjamin Kosnik [Tue, 31 Oct 2000 01:26:06 +0000 (01:26 +0000)]
[multiple changes]

2000-10-30  Benjamin Kosnik  <bkoz@redhat.com>

* src/complex_io.cc : Remove ancient defines.
* config/os/gnu-linux/bits/os_defines.h: Add defines.
* libsupc++/tinfo2.cc: Change to cstddef.

* include/bits/codecvt.h: Add include of c++config.h, so that
__USE_GNU gets defined. (Important for alpha.)

* include/c/bits/std_cwctype.h: Same.
* include/c/bits/std_ctime.h: And here.
* include/c/bits/std_cstdarg.h: Same.
* include/c/bits/std_csignal.h: Same.
* include/c/bits/std_csetjmp.h: Same.
* include/c/bits/std_clocale.h: Same.
* include/c/bits/std_climits.h: Touch.
* include/c/bits/std_cfloat.h: Same.
* include/c/bits/std_cerrno.h: Same.
* include/c/bits/std_cwchar.h: Same.
* include/c/bits/std_cassert.h: Same.
* include/c/bits/std_cctype.h: Same.
* include/c/bits/std_cstddef.h: And here.
* include/c/bits/std_cstdlib.h: And here.
* include/c/bits/std_cstdio.h: Same.
* include/c/bits/std_cstring.h: Add names to namespace std::.

* include/bits/c++config (_GNU_SOURCE): Move linux-specific macros
from here...
(_ISOC99_SOURCE): And this one....
* config/os/gnu-linux/bits/os_defines.h: ...to here.

* include/bits/codecvt.h (codecvt<_InternT, _ExternT,
__enc_traits>::do_in): Don't cast to const, this is a bug in glibc
prior to 2.2.
(codecvt<_InternT, _ExternT, __enc_traits>::do_out): Same.
* include/c/bits/std_cwchar.h: Add using declarations for mbstate_t.

2000-10-30  Steven King  <sxking@uswest.net>

* include/bits/codecvt.h: Add cast.
* include/c_std/stdio.h: Re-add printf using declaration.
* include/c_std/bits/std_cstdio.h: Same
* testsuite/22_locale/codecvt_wchar_t_char.cc: Fixup testsuite.
* testsuite/22_locale/ctor_copy_dtor.cc: Same.
* testsuite/22_locale/facet.cc: Same.
* testsuite/22_locale/global_templates.cc: Same.
* testsuite/22_locale/operators.cc: Same.
* testsuite/22_locale/static_members.cc: Same.
* testsuite/26_numerics/c_math.cc: Same.
* testsuite/26_numerics/complex_inserters_extractors.cc: Same.
* testsuite/27_io/fpos.cc: Same.
* testsuite/27_io/istream_extractor_arith.cc: Same.
* testsuite/27_io/istream_unformatted.cc: Same.
* testsuite/27_io/ostream_inserter_arith.cc: Same.
* testsuite/27_io/streambuf.cc: Same.

From-SVN: r37149

23 years agocppfiles.c (stack_include_file): Check for stacked contexts here.
Neil Booth [Mon, 30 Oct 2000 22:29:00 +0000 (22:29 +0000)]
cppfiles.c (stack_include_file): Check for stacked contexts here.

* cppfiles.c (stack_include_file): Check for stacked contexts
here.
* cpphash.h (_cpp_do__Pragma): New prototype.
* cppinit.c (cpp_reader_init): Add _Pragma keyword to hash table.

* cpplex.c (skip_escaped_newlines): Only process trigraphs and
escaped newlines if !(buffer->from_stage3).
(_cpp_lex_token): Warn about missing newlines iff
!buffer->from_stage3.

* cpplib.c (get__Pragma_string, destringize,
_cpp_do__Pragma): New functions.
(run_directive): Set output_line for _Pragma to avoid line
markers in output.  Set from_stage3 and prevent macro expansion
for _Pragma and command-line options.  Check buffer exhaustion.
(cpp_push_buffer): Don't check for stacked macro contexts, as
this is perfectly legitimate for _Pragma.  Move the check to
stack_include_file instead. Set from_stage3 iff buffer is
preprocessed input.

* cpplib.h (struct cpp_buffer): Make warned_cplusplus_comments
unsigned. New boolean from_stage3.
(struct spec_nodes): Add n__Pragma.

* cppmacro.c (enter_macro_context): Flip sense of return value.
(_cpp_get_token): Handle _Pragma operator.

From-SVN: r37147

23 years agogcc.texi: The C++ standard isn't "draft" anymore.
Phil Edwards [Mon, 30 Oct 2000 22:20:52 +0000 (22:20 +0000)]
gcc.texi: The C++ standard isn't "draft" anymore.

2000-10-30  Phil Edwards  <pme@sources.redhat.com>

* gcc.texi:  The C++ standard isn't "draft" anymore.

From-SVN: r37146

23 years agoacinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT): Check for cabs, cabsf, and cabsl...
Mark Mitchell [Mon, 30 Oct 2000 21:30:30 +0000 (21:30 +0000)]
acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT): Check for cabs, cabsf, and cabsl, too.

        * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT): Check
        for cabs, cabsf, and cabsl, too.
        * aclocal.m4: Regenerated.
        * config.h.in: Likewise.
        * configure: Likewise.
        * libmath/Makefile.am (libmath_la_SOURCES): Remove cabs.c and
        cabsf.c.
        * libmath/Makefile.in: Regenerated.
        * libmath/complex-stub.h (cabs): Don't declare if the system
        already provides this function.
        (cabsf): Likewise.
        (cabsl): Likewise.
        * src/complex.cc (abs): Directly use `hypot' since we can't call
        cabs on IRIX.

From-SVN: r37145

23 years agoacinclude.m4: Update URL on egcs.cygnus.com to point to gcc.gnu.org.
Joseph Myers [Mon, 30 Oct 2000 13:15:24 +0000 (13:15 +0000)]
acinclude.m4: Update URL on egcs.cygnus.com to point to gcc.gnu.org.

* acinclude.m4: Update URL on egcs.cygnus.com to point to
gcc.gnu.org.
* aclocal.m4, configure: Regenerate.
* src/gen-num-limits.cc, include/bits/c++config,
include/bits/stl_config.h: Remove EGCS references.

From-SVN: r37144

23 years agoReader.java: Merge docs from classpath.
Bryce McKinlay [Mon, 30 Oct 2000 09:20:47 +0000 (09:20 +0000)]
Reader.java: Merge docs from classpath.

* java/io/Reader.java: Merge docs from classpath.
(skip): Synchronize on `lock'.
* java/io/FileReader.java: Import correct implementation from
classpath.
* java/io/StringReader.java: Merge docs from classpath.
(ready): Throw IOException if stream is closed.

From-SVN: r37143

23 years agoDaily bump.
Jeff Law [Mon, 30 Oct 2000 08:45:10 +0000 (01:45 -0700)]
Daily bump.

From-SVN: r37142

23 years ago* cppmacro.c (builtin_macro): Use NT_VOID, not T_VOID.
Mark Mitchell [Mon, 30 Oct 2000 08:41:23 +0000 (08:41 +0000)]
* cppmacro.c (builtin_macro): Use NT_VOID, not T_VOID.

From-SVN: r37141

23 years ago* etc: Remove directory from GCC.
Joseph Myers [Mon, 30 Oct 2000 08:29:08 +0000 (08:29 +0000)]
* etc: Remove directory from GCC.

From-SVN: r37140

23 years agoparse.y (patch_method_invocation): NULLify this_arg when already inserted.
Alexandre Petit-Bianco [Mon, 30 Oct 2000 02:37:25 +0000 (02:37 +0000)]
parse.y (patch_method_invocation): NULLify this_arg when already inserted.

2000-10-25  Alexandre Petit-Bianco  <apbianco@cygnus.com>

* parse.y (patch_method_invocation): NULLify this_arg when already
inserted.
(maybe_use_access_method): Handle call to methods unrelated to the
current class. Fixed comment.
Fixes gcj/361.

(http://sources.redhat.com/ml/java-prs/2000-q4/msg00072.html
 http://gcc.gnu.org/ml/gcc-patches/2000-10/msg00993.html)

From-SVN: r37139

23 years agoBitSet.java: Updated @specnote.
Bryce McKinlay [Mon, 30 Oct 2000 01:51:34 +0000 (01:51 +0000)]
BitSet.java: Updated @specnote.

2000-10-30  Bryce McKinlay  <bryce@albatross.co.nz>

* java/util/BitSet.java: Updated @specnote.

From-SVN: r37138

23 years agomkcheck.in (test_file): Use -rpath, rather than --rpath, when building shared executa...
Mark Mitchell [Mon, 30 Oct 2000 00:28:41 +0000 (00:28 +0000)]
mkcheck.in (test_file): Use -rpath, rather than --rpath, when building shared executables.

* mkcheck.in (test_file): Use -rpath, rather than --rpath, when
building shared executables.

From-SVN: r37137

23 years ago* gcc_build: Save the output from CVS into the logfile as well.
Mark Mitchell [Sun, 29 Oct 2000 23:04:48 +0000 (23:04 +0000)]
* gcc_build: Save the output from CVS into the logfile as well.

From-SVN: r37136

23 years ago* cpplib.c (skip_rest_of_line): Use _cpp_get_token.
Neil Booth [Sun, 29 Oct 2000 22:45:13 +0000 (22:45 +0000)]
* cpplib.c (skip_rest_of_line):  Use _cpp_get_token.

From-SVN: r37135

23 years agoconfigure.in: Simplify use of AC_CACHE_SAVE.
Benjamin Kosnik [Sun, 29 Oct 2000 22:32:30 +0000 (22:32 +0000)]
configure.in: Simplify use of AC_CACHE_SAVE.

2000-10-29  Benjamin Kosnik  <bkoz@redhat.com>

* configure.in: Simplify use of AC_CACHE_SAVE.  Put linked files
in $(top_builddir)/include/bits, not $(top_builddir)/bits, to help
with libgcj build issues and improve consistency with the source
directory's include directory setup.
* configure: Regenerate.
* acinclude.m4: Same here.
* aclocal.m4: Regenerate.
* mknumeric_limits (OUT_H): Also change paths here.
* mkcheck.in (C_DIR): And here.
* mkc++config (OUT_H): And here.
* libmath/Makefile.am (INCLUDES): And here.
* src/Makefile.am (INCLUDES): Change to $(top_builddir)/include.
* libio/Makefile.am: Ditto.
* libsupc++/Makefile.am (INCLUDES): Ditto.

From-SVN: r37134

23 years agoFix copyright date
Mark Mitchell [Sun, 29 Oct 2000 22:31:16 +0000 (22:31 +0000)]
Fix copyright date

From-SVN: r37133

23 years agoMakefile.am: Change logic for include dir options.
Mark Harig [Sun, 29 Oct 2000 22:30:28 +0000 (22:30 +0000)]
Makefile.am: Change logic for include dir options.

2000-10-29   Mark Harig <mharig@landmark.com>

* src/Makefile.am: Change logic for include dir options.
* src/Makefile.in: Regenerate.
* libsupc++/Makefile.am: Ditto.
* libsupc++/Makefile.in: Regenerate.

From-SVN: r37132

23 years agoc_io_libio.cc (basic_file<char>::__basic_file): Don't pass a NULL _IO_wide_data to...
Mark Mitchell [Sun, 29 Oct 2000 21:52:54 +0000 (21:52 +0000)]
c_io_libio.cc (basic_file<char>::__basic_file): Don't pass a NULL _IO_wide_data to _IO_no_init when...

* config/c_io_libio.cc (basic_file<char>::__basic_file):
Don't pass a NULL _IO_wide_data to _IO_no_init when
_GLIBCPP_USE_WCHAR_T is not defined.
* config/c_io_libio.h (_IO_codecvt): Don't declare when
_GLIBCPP_USE_WCHAR_T is not defined.
* config/c_io_libio_codecvt.c: Don't compile it
when _GLIBCPP_USE_WCHAR_T is not defined.
* include/bits/codecvt.h (codecvt<_InternT, _ExternT, __enc_traits):
Don't define this specialization when _GLIBCPP_USE_WCHAR_T
is not defined.
* include/bits/locale_facets.h (<bits/std_cwctype.h>): Don't
include it when _GLIBCPP_USE_WCHAR_T is not defined.
* src/codecvt.cc (__enc_traits::_S_max_size): Don't define
when _GLIBCPP_USE_WCHAR_T is not defined.
* src/localename.cc (locale::_Impl::_M_construct_collate):
Don't call wide-character functions when _GLIBCPP_USE_WCHAR_T is
not defined.
(locale::_Impl::_M_construct_ctype): Likewise.
(locale::_Impl::_M_construct_monetary): Likewise.
(locale::_Impl::_M_construct_numeric): Likewise.
(locale::_Impl::_M_construct_time): Likewise.
(locale::_Impl::_M_construct_messages): Likewise.

* iofopen.c (_IO_new_fopen): Don't define `_IO_wide_data wd'
if _GLIBCPP_USE_WCHAR_T is not defined.
* iofwide.c: Don't define codecvt functions when
_GLIBCPP_USE_WCHAR_T is not defined.
(_IO_fwide): Don't try to put the stream in wide mode when
_GLIBCPP_USE_WCHAR_T is not defined.
* libio.h (_IO_wide_data): Define it as an incomplete struct
when _GLIBCPP_USE_WCHAR_T is not defined.
* wfiledoalloc.c: Don't define anything when
_GLIBCPP_USE_WCHAR_T is not defined.
* wfileops.c: Likewise.
* wgenops.c: Likewise.

From-SVN: r37131

23 years ago_G_config.h (_G_USING_THUNKS): Allow overrides from OS-configuration files.
Mark Mitchell [Sun, 29 Oct 2000 21:21:51 +0000 (21:21 +0000)]
_G_config.h (_G_USING_THUNKS): Allow overrides from OS-configuration files.

* _G_config.h (_G_USING_THUNKS): Allow overrides from
OS-configuration files.
* libioP.h: Test _G_USING_THUNKS with #if, rather than #ifdef.

From-SVN: r37130

23 years agoacinclue.m4 (GLIBCPP_ENABLE_ATOMICITY): Handle IRIX.
Mark Mitchell [Sun, 29 Oct 2000 21:05:07 +0000 (21:05 +0000)]
acinclue.m4 (GLIBCPP_ENABLE_ATOMICITY): Handle IRIX.

* acinclue.m4 (GLIBCPP_ENABLE_ATOMICITY): Handle IRIX.
* aclocal.m4: Regenerated.
* configure: Likewise.
* config/os/irix/bits/atomicity.h: New file.
* config/os/irix/bits/os_defines.h (_POSIX_SOURCE): Undefine.
(__off_t): Define.
(__off64_t): Likewise.
(__ssize_t): Likewise.
(_G_USING_THUNKS): Define to zero.

From-SVN: r37129

23 years agoatomicity.h: New file.
Mark Mitchell [Sun, 29 Oct 2000 20:47:00 +0000 (20:47 +0000)]
atomicity.h: New file.

* config/os/irix/bits/atomicity.h: New file.
* config/os/irix/bits/os_defines.h (_POSIX_SOURCE): Undefine.
(__off_t): Define.
(__off64_t): Likewise.
(__ssize_t): Likewise.
(_G_USING_THUNKS): Define to zero.

From-SVN: r37128

23 years agotoplev.c, [...]: Change comments mentioning C9X to refer to C99 instead.
Joseph Myers [Sun, 29 Oct 2000 19:34:53 +0000 (19:34 +0000)]
toplev.c, [...]: Change comments mentioning C9X to refer to C99 instead.

* toplev.c, flags.h, fold-const.c, real.c, rtl.c,
fixinc/inclhack.def: Change comments mentioning C9X to refer to
C99 instead.

From-SVN: r37127

23 years agodefined.c, [...]: New tests.
Neil Booth [Sun, 29 Oct 2000 17:43:57 +0000 (17:43 +0000)]
defined.c, [...]: New tests.

* gcc.dg/cpp/defined.c, include1.c, paste11.c, skipping.c:
New tests.
* gcc.dg/cpp/macsyntx.c: Move test to defined.c.
* gcc.dg/cpp/mi3.c, mi3.h: New test for over-enthusiastic
optimisation.

From-SVN: r37126

23 years agoinvoke.texi: Document that -V will only work for very similar versions of driver...
Joseph Myers [Sun, 29 Oct 2000 17:37:50 +0000 (17:37 +0000)]
invoke.texi: Document that -V will only work for very similar versions of driver and compiler.

* invoke.texi: Document that -V will only work for very similar
versions of driver and compiler.

From-SVN: r37125

23 years agomacro4.c, macro5.c: New tests.
Neil Booth [Sun, 29 Oct 2000 11:49:09 +0000 (11:49 +0000)]
macro4.c, macro5.c: New tests.

        * gcc.dg/cpp/macro4.c, macro5.c: New tests.
        * mi1.c, mi1c.h: Add null directives to multiple-include test.
        * mi5.c: Test multiple includes work with -C.
        * trigraphs.c: Test ^= version.

From-SVN: r37124

23 years agocppmacro.c (_cpp_create_definition): Optimize the case of a macro defined to itself.
Neil Booth [Sun, 29 Oct 2000 11:37:18 +0000 (11:37 +0000)]
cppmacro.c (_cpp_create_definition): Optimize the case of a macro defined to itself.

* cppmacro.c (_cpp_create_definition): Optimize the case of
        a macro defined to itself.

From-SVN: r37123

23 years ago* cpplex.c (save_comment): Don't store new lines in C++ comments.
Neil Booth [Sun, 29 Oct 2000 09:56:00 +0000 (09:56 +0000)]
* cpplex.c (save_comment): Don't store new lines in C++ comments.

From-SVN: r37122

23 years ago* integrate.c (copy_insn_list): Copy the unchanging flag for calls.
Michael Hayes [Sun, 29 Oct 2000 09:14:22 +0000 (09:14 +0000)]
* integrate.c (copy_insn_list): Copy the unchanging flag for calls.

From-SVN: r37121

23 years agoDaily bump.
Jeff Law [Sun, 29 Oct 2000 07:45:08 +0000 (01:45 -0600)]
Daily bump.

From-SVN: r37120

23 years agocpphash.c (cpp_forall_identifiers): Add context variable for callback routine.
Geoff Keating [Sun, 29 Oct 2000 07:07:20 +0000 (07:07 +0000)]
cpphash.c (cpp_forall_identifiers): Add context variable for callback routine.

* cpphash.c (cpp_forall_identifiers): Add context variable
for callback routine.
* cppmain.c (dump_macro): Update to match cpp_forall_identifiers
change.
(main): Call cpp_forall_identifiers with null context.
* cpplib.h (cpp_forall_identifiers): Update prototype.

* cppmain.c: Make `parse_in' and `print' static.

From-SVN: r37119

23 years ago* c-decl.c (finish_function): Clear c_function_name_declared_p.
Alan Modra [Sun, 29 Oct 2000 05:59:58 +0000 (05:59 +0000)]
* c-decl.c (finish_function): Clear c_function_name_declared_p.

From-SVN: r37118

23 years agoregrename.c (scan_rtx_address): Frob action, not class, when trying to disable optimi...
Richard Henderson [Sun, 29 Oct 2000 05:41:44 +0000 (22:41 -0700)]
regrename.c (scan_rtx_address): Frob action, not class, when trying to disable optimization.

        * regrename.c (scan_rtx_address): Frob action, not class,
        when trying to disable optimization.

From-SVN: r37117

23 years agoAbstractCollection.java (addAll): Use size() instead of hasNext() in iterator loop.
Bryce McKinlay [Sun, 29 Oct 2000 05:06:10 +0000 (05:06 +0000)]
AbstractCollection.java (addAll): Use size() instead of hasNext() in iterator loop.

2000-10-29  Bryce McKinlay  <bryce@albatross.co.nz>

* java/util/AbstractCollection.java (addAll): Use size() instead of
hasNext() in iterator loop.
(clear): Ditto.
(contains): Ditto. Simplify loop.
(containsAll): Ditto.
(remove): Ditto.
(removeAll): Ditto.
(retainAll): Ditto.
(toArray): Ditto.
(toString): Ditto. Use string concatenation operators, not
StringBuffer.
* java/util/AbstractList.java (addAll): Use size() instead of
hasNext() in iterator loop.
(equals): Ditto.
(hashCode): Ditto.
(indexOf): Ditto. Don't take null check outside of the loop.
(iterator): Return an AbstractListItr instead of anonymous class.
(lastIndexOf): Use a for loop bounded by size() instead of
hasPrevious() in iterator loop.
(listIterator): Return an AbstractListItr.
(removeRange): Remove bounds checking code and docs.
(AbstractListItr): New inner class. Code moved here from
listIterator().
(SubList.iterator): Removed. Use default implementation from
AbstractList instead.
(SubList.listIterator): As above.
* java/util/AbstractMap.java (clear): Use a for loop bounded by size()
instead of hasNext() in iterator loop.
(containsValue): Ditto.
(equals): Ditto.
(get): Ditto.
(put): Ditto.
(putAll): Ditto.
(remove): Ditto.
(toString): Ditto. Use string concatenation operators, not
StringBuffer.
* java/util/AbstractSequentialList.java (addAll): Use a for loop
bounded by size() instead of hasNext() in iterator loop.
* java/util/AbstractSet.java (hashCode): Don't catch exception as
part of normal execution flow. Do an explicit null check instead.
* java/util/ArrayList.java (_iSize): Rename to `size'.
(_arData): Rename to `data'.
(get): Check lower bounds also. Simplify IndexOutOfBoundsException
message.
(remove): Ditto.
(removeRange): Make protected. Don't check bounds.
(add): Check lower bounds also. Simplify IndexOutOfBoundsException
message.
(addAll (Collection)): Use a size-bounded for loop instead of hasNext()
check.
(addAll (int, Collection)): Check lower bounds. Simplify exception
string.
(clone): Clone the data array too.
(indexOf): Inline doesEqual().
(lastIndexOf): Ditto.
(clear): Don't set array data to null.
(set): Check lower bounds. Simplify exception string.
(toArray): Correct comment.
(trimToSize): Don't update modCount, this is not a structural change.
Add comment.

* java/util/BitSet.java: Merged with classpath, new JDK 1.2 methods
implemented.
(toString): Declare `bit' as long, not int.
(data): Made package-private, not private.

From-SVN: r37116

23 years agoRe-indent in preparation for diff.
Bryce McKinlay [Sun, 29 Oct 2000 04:46:45 +0000 (04:46 +0000)]
Re-indent in preparation for diff.

From-SVN: r37115

23 years agoRe-indent in preparation for diff.
Bryce McKinlay [Sun, 29 Oct 2000 04:44:10 +0000 (04:44 +0000)]
Re-indent in preparation for diff.

From-SVN: r37114

23 years agoNew test
Mark Mitchell [Sun, 29 Oct 2000 02:30:21 +0000 (02:30 +0000)]
New test

From-SVN: r37113

23 years agoc-semantics.c (make_rtl_for_local_static): Don't clobber DECL_ASSEMBLER_NAME.
Mark Mitchell [Sun, 29 Oct 2000 02:26:16 +0000 (02:26 +0000)]
c-semantics.c (make_rtl_for_local_static): Don't clobber DECL_ASSEMBLER_NAME.

* c-semantics.c (make_rtl_for_local_static): Don't clobber
DECL_ASSEMBLER_NAME.

From-SVN: r37112

23 years agoconfigure.in: Determine and substitute gcc_version_full.
Joseph Myers [Sat, 28 Oct 2000 21:44:52 +0000 (22:44 +0100)]
configure.in: Determine and substitute gcc_version_full.

* configure.in: Determine and substitute gcc_version_full.
* configure: Regenerate.
* gccbug.in: Use it to give full version.  Don't allow
confidential PRs.

From-SVN: r37111

23 years agorecog.c (split_all_insns): Run cleanup_subreg_operands after reload.
Richard Henderson [Sat, 28 Oct 2000 21:43:29 +0000 (14:43 -0700)]
recog.c (split_all_insns): Run cleanup_subreg_operands after reload.

        * recog.c (split_all_insns): Run cleanup_subreg_operands
        after reload.

From-SVN: r37110

23 years agoregrename.c (regrename_optimize): Verify that all registers of a multiple register...
Richard Henderson [Sat, 28 Oct 2000 21:41:24 +0000 (14:41 -0700)]
regrename.c (regrename_optimize): Verify that all registers of a multiple register mode are available.

        * regrename.c (regrename_optimize): Verify that all registers of
        a multiple register mode are available.
        (scan_rtx_address): Accept the mode of the address; all callers
        changed.

From-SVN: r37109

23 years ago* cpplib.c (run_directive): Fix prototype.
Richard Henderson [Sat, 28 Oct 2000 21:40:43 +0000 (14:40 -0700)]
* cpplib.c (run_directive): Fix prototype.

From-SVN: r37108

23 years agopt.c (instantiate_decl): Always instantiate static data members initialized in-class.
Mark Mitchell [Sat, 28 Oct 2000 21:37:21 +0000 (21:37 +0000)]
pt.c (instantiate_decl): Always instantiate static data members initialized in-class.

* pt.c (instantiate_decl): Always instantiate static data members
initialized in-class.

From-SVN: r37107

23 years agostring-inst.cc (basic_string<C>::npos): Explicitly instantiate it.
Mark Mitchell [Sat, 28 Oct 2000 21:28:44 +0000 (21:28 +0000)]
string-inst.cc (basic_string<C>::npos): Explicitly instantiate it.

* src/string-inst.cc (basic_string<C>::npos): Explicitly
instantiate it.

From-SVN: r37106

23 years agoUse dynamic branch prediction hint in more cases.
Bernd Schmidt [Sat, 28 Oct 2000 19:42:48 +0000 (19:42 +0000)]
Use dynamic branch prediction hint in more cases.

From-SVN: r37105

23 years agoBetter RTX_COSTS for ia64.
Bernd Schmidt [Sat, 28 Oct 2000 19:39:58 +0000 (19:39 +0000)]
Better RTX_COSTS for ia64.

From-SVN: r37104

23 years agoNever set reload_override_in for optional reloads.
Bernd Schmidt [Sat, 28 Oct 2000 19:36:04 +0000 (19:36 +0000)]
Never set reload_override_in for optional reloads.

From-SVN: r37103

23 years agoFix computation of goal_alternative_matched
Bernd Schmidt [Sat, 28 Oct 2000 19:33:09 +0000 (19:33 +0000)]
Fix computation of goal_alternative_matched

From-SVN: r37102

23 years ago*** empty log message ***
Neil Booth [Sat, 28 Oct 2000 18:10:41 +0000 (18:10 +0000)]
*** empty log message ***

From-SVN: r37101

23 years ago*** empty log message ***
Neil Booth [Sat, 28 Oct 2000 18:02:28 +0000 (18:02 +0000)]
*** empty log message ***

From-SVN: r37100

23 years ago19960224-2.c, [...]: Update tests for new diagnostic messages.
Neil Booth [Sat, 28 Oct 2000 18:01:40 +0000 (18:01 +0000)]
19960224-2.c, [...]: Update tests for new diagnostic messages.

* gcc.dg/cpp/19960224-2.c, 20000625-2.c, cxxcom2.c, directiv.c,
endif.c, if-4.c, if-5.c, if-mop.c, macsyntx.c, paste2.c, paste6.c,
paste8.c, redef2.c, strify2.c, strp1.c, tr-warn1.c, tr-warn3.c,
tr-warn6.c, undef1.c, undef2.c, widestr1.c: Update tests for
new diagnostic messages.

* gcc.dg/cpp/macro3.c: New tests.

From-SVN: r37099

23 years agoNew macro expander.
Neil Booth [Sat, 28 Oct 2000 17:59:06 +0000 (17:59 +0000)]
New macro expander.

2000-10-28  Neil Booth  <neilb@earthling.net>

New macro expander.

* cpplib.c (struct answer): New.
(struct if_stack): Use cpp_lexer_pos rather than line and col.
Rename cmacro mi_cmacro.
(struct directive, KANDR, STDC89, EXTENSION, COND, IF_COND, INCL,
IN_I): New directive and flags.
(skip_rest_of_line, check_eol, run_directive, glue_header_name,
parse_answer, parse_assertion, find_answer): New functions.
(parse_ifdef, detect_if_not_defined, validate_else): Remove.
(lex_macro_node): New function to replace parse_ifdef and
get_define_node.

(_cpp_handle_directive): New function, combines _cpp_check_directive
and _cpp_check_linemarker.

(do_define, do_undef, parse_include, do_include, do_import,
do_include_next, read_line_number, do_line, do_ident, do_pragma,
do_pragma_once, do_pragma_poison, do_pragma_dependency):
Update for new token getting interface.

(do_ifdef, do_ifndef, do_if, do_else, do_endif, push_conditional)
: Update for new multiple-include optimisation technique.
(do_elif): Don't forget to invalidate controlling macros.

(unwind_if_stack, cpp_defined, cpp_push_buffer, cpp_pop_buffer): Update.
(parse_assertion, parse_answer, find_answer, _cpp_test_assertion):
Functions to handle assertions with the new token interface.
(do_assert, do_unassert): Use them.

(cpp_define, _cpp_define_builtin, cpp_undef, cpp_assert, cpp_unassert):
Use run_directive.

(_cpp_init_stacks): Register directive names.  Don't register special
nodes.

* cpperror.c (print_containing_files, _cpp_begin_message): Update to
new position recording regime.
(cpp_ice, cpp_fatal, cpp_error, cpp_error_with_line, cpp_warning,
cpp_warning_with_line, cpp_pedwarn, cpp_pedwarn_with_line,
cpp_pedwarn_with_file_and_line): Update for _cpp_begin_message changes.
(cpp_type2name): Move to cpplex.c.

* cppexp.c (parse_charconst): spec_nodes is no longer a pointer.
(parse_defined): Update to handle new multiple include optimisation
method.  Remove poisoned identifier warning.
(parse_assertion, TYPE_NAME): Delete.
(lex): Update for multiple include optimisation, removal of
CPP_DEFINED, to use _cpp_test_assertion for assertions and
cpp_token_as_text.
(_cpp_parse_expr): Update for MI optimisation, and to use op_as_text.
(op_as_text): New function, to wrap cpp_token_as_text.

* cppfiles.c (stack_include_file, _cpp_pop_file_buffer):
Update for MI optimisation.
(_cpp_execute_include): Take a token rather than 3 arguments.  Fix
segfault on diagnostic.
(_cpp_compare_file_date): Take a token rather than 3 args.
(cpp_read_file): Work correctly for zero-length files.

* cpphash.c (_cpp_init_macros, _cpp_cleanup_macros): Rename
_cpp_init_hashtable and _cpp_cleanup_hashtable.
(cpp_lookup): Place identifiers at front of identifier pool
for _cpp_lookup_with_hash.
(_cpp_lookup_with_hash): Require identifiers to be at the front of
the identifier pool.  Commit the memory if not already in the
hash table.

* cppinit.c (cpp_reader_init): Move cpp_init_completed test to top.
Initialise various members of cpp_reader, memory pools, and the
special nodes.
(cpp_printer_init): Delete.
(cpp_cleanup): Update.
(struct builtin, builtin_array, initialize_builtins): Update for new
hashnode definition and builtin handling.
(cpp_start_read, cpp_finish): Don't take or initialise a
printer.  Update.

* cpplib.h (cpp_printer, cpp_toklist, CPP_DEFINED, BOL,
PASTED, VAR_ARGS, BEG_OF_FILE, IN_DIRECTIVE, KNOWN_DIRECTIVE,
T_VOID, T_SPECLINE, T_DATE, T_FILE, T_BASE_FILE, T_INCLUDE_LEVEL,
T_TIME, T_STDC, T_OPERATOR, T_POISON, T_MACRO, T_ASSERTION): Delete.
(struct cpp_pool, struct cpp_macro, struct cpp_lexer_pos,
struct cpp_lookahead, CPP_DHASH, enum mi_state, enum mi_ind,
NO_EXPAND, VARARGS_FIRST, struct cpp_token_with_pos,
struct toklist, struct cpp_context, struct specnodes,
TOKEN_LOOKAHEAD, TOKEN_BUFFSIZE, NODE_OPERATOR, NODE_POISONED,
NODE_BUILTIN, NODE_DIAGNOSTIC, NT_VOID, NT_MACRO, NT_ASSERTION,
enum builtin_type, cpp_can_paste): New.
(struct cpp_token): Delete line and col members.
(struct cpp_buffer): New member output_lineno.
(struct lexer_state): Delete indented, in_lex_line, seen_dot.
Add va_args_ok, poisoned_ok, prevent_expansion, parsing_args.
(struct cpp_reader): New members lexer_pos, macro_pos, directive_pos,
ident_pool, temp_string_pool, macro_pool, argument_pool, string_pool,
base_context, context, directive, mi_state, mi_if_not_defined,
mi_lexed, mi_cmacro, mi_ind_cmacro, la_read, la_write, la_unused,
mlstring_pos, macro_buffer, macro_buffer_len.
Delete members mls_line, mls_column, token_list, potential_control_macro,
temp_tokens, temp_cap, temp_alloced, temp_used, first_directive_token,
context_cap, cur_context, no_expand_level, paste_level, contexts, args,
save_parameter_spellings, need_newline, .
Change type of date, time and spec_nodes members.
Change prototypes for include and ident callbacks.
(struct cpp_hashnode): Change type of name.  Remove union members
expansion and code.  Add members macro, operator and builtin.

(cpp_token_len, cpp_token_as_text, cpp_spell_token, cpp_start_read,
cpp_finish, cpp_avoid_paste, cpp_get_token, cpp_get_line,
cpp_get_output_line, cpp_macro_definition, cpp_start_lookahead,
cpp_stop_lookahead): New prototypes.
(cpp_printer_init, cpp_dump_definition): Delete prototypes.

(U_CHAR, U, ustrcmp, ustrncmp, ustrlen, uxstrdup, ustrchr, ufputs):
Move from cpphash.h.

* cpphash.h (U_CHAR, U, ustrcmp, ustrncmp, ustrlen, uxstrdup, ustrchr,
ufputs): Move to cpplib.h.
(enum spell_type, struct token_spelling, _cpp_token_spellings, TOKEN_SPELL,
TOKEN_NAME, struct answer, FREE_ANSWER, KANDR, STDC89, EXTENSION,
COND, EXPAND, INCL, COMMENTS, IN_I, struct directive, directive_handler,
struct spec_nodes, _cpp_digraph_spellings, _cpp_free_temp_tokens,
_cpp_init_input_buffer, _cpp_grow_token_buffer, _cpp_init_toklist,
_cpp_clear_toklist, _cpp_expand_token_space, _cpp_expand_name_space,
_cpp_equiv_tokens, _cpp_equiv_toklists, _cpp_process_directive,
_cpp_run_directive, _cpp_get_line, _cpp_get_raw_token, _cpp_glue_header_name,
_cpp_can_paste, _cpp_check_directive, _cpp_check_linemarker,
_cpp_parse_assertion, _cpp_find_answer): Delete.
(VALID_SIGN, ALIGN, POOL_FRONT, POOL_LIMIT, POOL_BASE, POOL_SIZE,
POOL_USED, POOL_COMMIT, struct cpp_chunk, _cpp_lex_token, _cpp_init_pool,
_cpp_free_pool, _cpp_pool_reserve, _cpp_pool_alloc, _cpp_next_chunk,
_cpp_lock_pool, _cpp_unlock_pool, _cpp_test_assertion,
_cpp_handle_directive, DSC): New.
(struct include_file): New member defined.

(DO_NOT_REREAD, _cpp_begin_message, _cpp_execute_include,
_cpp_compare_file_date): Update.
(_cpp_pop_context, _cpp_get_token, _cpp_free_lookaheads, _cpp_push_token): New.
(_cpp_init_macros, _cpp_cleanup_macros): Rename to _cpp_init_hashtable,
_cpp_cleanup_hashtable.

* Makefile.in: Remove cppoutput.c.

* cppoutput.c: Delete

* fixheader.c (read_scan_file): Update for new cpp_get_token
prototype.
(recognized_function): New argument LINE.

* scan-decls.c (skip_to_closing_brace, scan_decls): Update for
new cpp_get_token prototype.

* scan.h (recognized_function): Update prototype.

* po/POTFILES.in: Remove cppoutput.c.

From-SVN: r37098

23 years agoDaily bump.
Jeff Law [Sat, 28 Oct 2000 07:45:08 +0000 (01:45 -0600)]
Daily bump.

From-SVN: r37097

23 years agoc-typeck.c (check_init_type_bitfields): Remove.
Mark Mitchell [Sat, 28 Oct 2000 00:18:39 +0000 (00:18 +0000)]
c-typeck.c (check_init_type_bitfields): Remove.

* c-typeck.c (check_init_type_bitfields): Remove.
(constructor_incremental): Likewise.
(struct constructor_stack): Remove incremental bit.
(struct initializer_stack): Likewise.
(start_init): Don't play with constructor_incremental.
(finish_init): Likewise.
(really_start_incremental_init): Likewise.
(push_init_level): Likewise.
(pop_init_level): Likewise.
(output_init_level): Likewise.
(output_pending_init_elements): Likewise.

From-SVN: r37096

23 years agoc-pragma.c (handle_pragma_pack): Initialize align to -1.
Mike Coleman [Sat, 28 Oct 2000 00:04:11 +0000 (00:04 +0000)]
c-pragma.c (handle_pragma_pack): Initialize align to -1.

2000-10-21  Mike Coleman  <mcoleman2@kc.rr.com>

* c-pragma.c (handle_pragma_pack): Initialize align to -1.
Improve error messages.  Correct parsing of
#pragma pack(pop [,id]).  Do not check the user-supplied
alignment if we're popping.

* gcc.dg/pack-test-1.c: New test case.
* gcc.dg/pack-test-2.c: New test case.
* gcc.dg/pack-test-1.h: New file.

From-SVN: r37095

23 years ago* cpp.texi: Update.
Neil Booth [Fri, 27 Oct 2000 23:50:15 +0000 (23:50 +0000)]
* cpp.texi: Update.

From-SVN: r37094

23 years ago* invoke.texi: Document -mintel-syntax
Kelley Cook [Fri, 27 Oct 2000 23:40:00 +0000 (23:40 +0000)]
* invoke.texi: Document -mintel-syntax

From-SVN: r37093

23 years agoinvoke.texi: Document -frename-registers.
Richard Henderson [Fri, 27 Oct 2000 21:56:01 +0000 (14:56 -0700)]
invoke.texi: Document -frename-registers.

        * invoke.texi: Document -frename-registers.  Add it to -O3.
        * toplev.c (rest_of_compilation): Run regrename before ifcvt2.
        (enum dump_file_index, dump_file): Update order.
        (main): Set flag_rename_registers at -O3.

From-SVN: r37092

23 years agoalpha.h (enum reg_class): Add PV_REG.
Richard Henderson [Fri, 27 Oct 2000 21:30:52 +0000 (14:30 -0700)]
alpha.h (enum reg_class): Add PV_REG.

        * config/alpha/alpha.h (enum reg_class): Add PV_REG.
        (REG_CLASS_NAMES, REG_CLASS_CONTENTS, REGNO_REG_CLASS): Update.
        (REG_CLASS_FROM_LETTER): Assign it to 'c'.
        * config/alpha/alpha.md (call_osf_1): Use it.
        (call_value_osf_1): Likewise.

From-SVN: r37091

23 years agoia64.c: Revert 10-23 patch.
Richard Henderson [Fri, 27 Oct 2000 21:27:10 +0000 (14:27 -0700)]
ia64.c: Revert 10-23 patch.

        * config/ia64/ia64.c: Revert 10-23 patch.
        (ia64_hard_regno_rename_ok): New.
        * config/ia64/ia64-protos.h: Declare it.
        * config/ia64/ia64.h (HARD_REGNO_RENAME_OK): Use it.

From-SVN: r37090

23 years agoregrename.c: Rewrite to handle multi-register modes and cond_exec instructions.
Bernd Schmidt [Fri, 27 Oct 2000 20:58:57 +0000 (20:58 +0000)]
regrename.c: Rewrite to handle multi-register modes and cond_exec instructions.

        * regrename.c: Rewrite to handle multi-register modes and
        cond_exec instructions.
        * Makefile.in (regrename.o): Update dependancies.
        * recog.h (struct operand_alternative): Add is_address.
        * recog.c (preprocess_constraints) [case 'p']: Set it.

Co-Authored-By: Richard Henderson <rth@redhat.com>
From-SVN: r37089

23 years agoconfigure.in: If not NO_MINUS_C_MINUS_O, substitute OUTPUT_OPTION with '-o $@'.
Zack Weinberg [Fri, 27 Oct 2000 20:22:28 +0000 (20:22 +0000)]
configure.in: If not NO_MINUS_C_MINUS_O, substitute OUTPUT_OPTION with '-o $@'.

* configure.in: If not NO_MINUS_C_MINUS_O, substitute
OUTPUT_OPTION with '-o $@'.  Make zlibdir, zlibinc relative to
top level.  Kill oldstyle_subdirs.  Do not include
$srcdir/$s/Makefile.in in all_lang_makefiles, but do include
$outputs.  Do not run configure.lang from config.status.
Rearrange warning-flag logic to correspond to what the
makefile wants.  Put special vax stage1 options in
@stage1_flags@ not @stage1_warn_cflags@.  Don't do anything
with extra_c_objs, extra_cxx_objs, or extra_cpp_objs.
(--enable-c-cpplib): AC_SUBST(maybe_cpplib) with "libcpp.a" if
switch is given, nothing otherwise.
* configure.lang: Delete.

        * Makefile.in: Expunge all traces of extra_c_objs,
        extra_cxx_objs, and extra_cpp_objs.  Set MAYBE_CPPLIB from
        @maybe_cpplib@. Add $(MAYBE_CPPLIB) to C_AND_OBJC_OBJS.  Set
        warning options via a three level scheme so that -pedantic and
        -Wtraditional are not used for non-C front ends: LOOSE_WARN,
        STRICT1_WARN, STRICT2_WARN -> $(@D)-warn, GCC_WARN_CFLAGS ->
        WARN_CFLAGS.  Distinguish STAGE1_CFLAGS from BOOT_CFLAGS.
Add -I$(@D) and -I$(srcdir)/$(@D) to INCLUDES.
Set OUTPUT_OPTION, ZLIB, ZLIBINC.  Do not set P,
        LANG_FLAGS_TO_PASS.  Add OUTPUT_OPTION to all object-file
        generation rules.  Wrap all rules that change the current
        directory in parentheses; pmake doesn't spawn a new shell for
        each command.  Expunge all references to $(P).  When one
        command depends on another and they're run all at once, use &&
        to separate them, not ;.  Add libgcc_s$(SHLIB_EXT) to files
        deleted on make clean.  Force OUTPUT_OPTION='-o $@' in stage2
        and beyond.

* cp/Make-lang.in, f/Make-lang.in, java/Make-lang.in,
objc/Make-lang.in: Wrap all rules that change the current
directory in parentheses.  Expunge all references to $(P).
When one command depends on another and they're run all at
once, use && to separate them, not ;.  Add OUTPUT_OPTION to
all object-file generation rules.  Delete obsolete variables.
Move all build rules here from the corresponding Makefile.in and
adapt to the new environment.

* cp/Makefile.in, f/Makefile.in, java/Makefile.in, objc/Makefile.in:
Delete.

* cp/config-lang.in, f/config-lang.in, java/config-lang.in:
Delete outputs= line.

From-SVN: r37088

23 years agocalls.c (expand_call): If sibcall_failure is set during pass 1, clear tail_call_insns...
Jakub Jelinek [Fri, 27 Oct 2000 19:49:53 +0000 (21:49 +0200)]
calls.c (expand_call): If sibcall_failure is set during pass 1, clear tail_call_insns as well.

* calls.c (expand_call): If sibcall_failure is set during pass 1,
clear tail_call_insns as well.

* g++.old-deja/g++.other/eh2.C: New test.

From-SVN: r37087

23 years agoAdd prototype to prevent compile time warning
Nick Clifton [Fri, 27 Oct 2000 18:40:59 +0000 (18:40 +0000)]
Add prototype to prevent compile time warning

From-SVN: r37086

23 years agoNew testcase.
Bernd Schmidt [Fri, 27 Oct 2000 12:52:16 +0000 (12:52 +0000)]
New testcase.

From-SVN: r37084

23 years ago[multiple changes]
Benjamin Kosnik [Fri, 27 Oct 2000 12:31:37 +0000 (12:31 +0000)]
[multiple changes]

2000-10-26  Benjamin Kosnik  <bkoz@redhat.com>

* include/c/bits/std_cmath.h: Fix double declarations in namespace std.

Clean up naming, consistency in "C" library autoconf testing.
* acinclude.m4 (GLIBCPP_CHECK_CTYPE): For consistency, change to
GLIBCPP_CHECK_CTYPE_SUPPORT.
(GLIBCPP_CHECK_STDLIB_SUPPORT): Add.
* aclocal.m4: Regenerate.
* configure.in: And here.
Add call to GLIBCPP_CHECK_STDLIB_SUPPORT.
* configure: Regenerate.

2000-10-26  David Edelsohn  <edelsohn@gnu.org>

* acinclude.m4 (GLIBCPP_CHECK_STDLIB_DECL_AND_LINKAGE_2): New macro.
(GLIBCPP_CHECK_MATH_SUPPORT): Use it to test for strtold.

From-SVN: r37083