Commit Graph

33418 Commits

Author SHA1 Message Date
J"orn Rennecke ae7676edff * gcc.c-torture/execute/920302-1.c: Cast 0 to pointer.
From-SVN: r39374
2001-01-31 12:25:44 +00:00
Alexandre Oliva 8b1065f175 fp-bit.c: Include hconfig.h
* config/fp-bit.c: Include hconfig.h
(float_to_si): Don't assume SImode is 32-bits wide.
(float_to_usi): Likewise.

From-SVN: r39373
2001-01-31 11:04:33 +00:00
Joseph Myers 0aca1a4fd3 c-parse.in (structsp): Pedwarn when "enum foo" refers to an incomplete type.
* c-parse.in (structsp): Pedwarn when "enum foo" refers to an
	incomplete type.
	(typename): Call pending_xref_error after parsing typed_typespecs.
	* c-decl.c (lookup_tag): Give error immediately rather than
	leaving it pending if the tag of the wrong type is in the same
	binding level.
	(xref_tag): Don't pedwarn for forward declarations of enum types
	here.
	* gcc.texi (Actual Bugs): Remove entry for misuse of struct, union
	and enum tags.

testsuite:
	* gcc.dg/c99-tag-1.c: New test.

From-SVN: r39372
2001-01-31 10:24:40 +00:00
Alexandre Oliva 92fa350add * config/float-sparc.h (LDBL_MAX) [sparc32]: Fix typo.
From-SVN: r39371
2001-01-31 09:27:12 +00:00
Jeff Law 387d2880d4 Daily bump.
From-SVN: r39370
2001-01-31 01:45:11 -07:00
Neil Booth 2e1911bfad * gcc.dg/cpp/tr-warn1.c: Add tests.
From-SVN: r39369
2001-01-31 07:57:12 +00:00
Neil Booth f000294dcd cpplib.c (T_ELIF): Move to STDC89, not that it matters.
* cpplib.c (T_ELIF): Move to STDC89, not that it matters.
        (_cpp_handle_directive): Suggest not using #elif with -Wtraditional.

From-SVN: r39368
2001-01-31 07:56:07 +00:00
Neil Booth fd793c7a43 avoidpaste1.c: Update.
* gcc.dg/cpp/avoidpaste1.c: Update.
        * gcc.dg/cpp/paste4.c: Update.

From-SVN: r39367
2001-01-31 07:50:11 +00:00
Neil Booth ec1a23e60b cpphash.h (struct cpp_reader): New saved_flags.
* cpphash.h (struct cpp_reader): New saved_flags.
        * cppmacro.c (cpp_get_token): Use saved_flags to remember
        to avoid a paste after a pasted token.

From-SVN: r39366
2001-01-31 07:48:54 +00:00
Alexandre Oliva 5d0e648684 libgcc2.h (Wtype_MAX, Wtype_MIN): Define.
* libgcc2.h (Wtype_MAX, Wtype_MIN): Define.
* libgcc2.c (__fixunssfSI, __fixunsdfSI, __fixunsxfSI): Use
Wtype_MIN instead of LONG_MIN.

From-SVN: r39365
2001-01-31 03:53:32 +00:00
Jeffrey D. Oldham b2321b269c Forgot to change this file.
From-SVN: r39363
2001-01-31 02:36:58 +00:00
Jeffrey D. Oldham 8d8d575288 fixincl.tpl: Add 2001 to copyright.
2001-01-30  Jeffrey Oldham  <oldham@codesourcery.com>

        * fixinc/fixincl.tpl: Add 2001 to copyright.  Change name of
        README file.
        * fixinc/fixincl.x: Regenerated.
        * fixinc/inclhack.def (irix_limits_const): New definition to
        convert "const" to "__const" in limits.h.

From-SVN: r39362
2001-01-31 02:35:49 +00:00
Jeffrey Oldham 4989b02098 genfixes (AG): Fix "autogen4" thinko.
2001-01-30  Jeffrey Oldham  <oldham@codesourcery.com>

	* fixinc/genfixes (AG): Fix "autogen4" thinko.

From-SVN: r39361
2001-01-31 02:27:15 +00:00
Jeffrey Oldham a9a184606c c99-float-1.c: XFAIL FLT_EVAL_METHOD and DECIMAL_DIG cases for Irix.
2001-01-30  Jeffrey Oldham  <oldham@codesourcery.com>

	* gcc.dg/c99-float-1.c: XFAIL FLT_EVAL_METHOD and DECIMAL_DIG
	cases for Irix.

From-SVN: r39360
2001-01-31 02:20:34 +00:00
Gerald Pfeifer 28d28e847f Makefile.in.in (distclean): Also remove *.gmo during `make distclean`.
* Makefile.in.in (distclean): Also remove *.gmo during `make
	distclean`.

From-SVN: r39359
2001-01-31 01:30:40 +00:00
Herman A.J. ten Brugge 2f33c63561 regmove.c (try_auto_increment): Change REG_DEAD into REG_UNUSED when register dies in the insn.
* regmove.c (try_auto_increment): Change REG_DEAD into REG_UNUSED
        when register dies in the insn.

From-SVN: r39358
2001-01-30 16:20:44 -08:00
Gerald Pfeifer 22ef15cf2e * g++.old-deja/g++.other/inline19.C: New test.
From-SVN: r39357
2001-01-31 00:08:44 +00:00
Neil Booth bdda33259f * diagnostic.c (fatal): Fix word wrap.
From-SVN: r39356
2001-01-30 23:47:33 +00:00
Alexandre Oliva 48b4d9013a combine.c (try_combine): Fix SUBREG setting for HOST_BITS_PER_WIDE_INT >= 2 * BITS_PER_WORD.
* combine.c (try_combine): Fix SUBREG setting for
HOST_BITS_PER_WIDE_INT >= 2 * BITS_PER_WORD.

From-SVN: r39355
2001-01-30 22:27:44 +00:00
Andrew Haley cab1f90abf 2001-01-26 Andrew Haley <aph@redhat.com>
(INIT_FPE): Use a direct system call to set the handler.

From-SVN: r39354
2001-01-30 21:00:22 +00:00
Franz Sirl 1e738f74b9 jump.c (comparison_dominates_p): Don't try to handle UNKNOWN comparison codes.
2001-01-30  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>

        * jump.c (comparison_dominates_p): Don't try to handle UNKNOWN
        comparison codes.

From-SVN: r39353
2001-01-30 19:34:41 +00:00
Neil Booth e9770d5120 c-decl.c (c_expand_body): Check TYPE_SIZE_UNIT (ret_type) is not NULL.
* c-decl.c (c_expand_body): Check TYPE_SIZE_UNIT (ret_type)
        is not NULL.
        * toplev.c (decode_W_option): Update warn_larger_than
        unconditionally for each processed switch.
        * testsuite/gcc.dg/Wlarger-than.c: New test.

From-SVN: r39352
2001-01-30 19:19:40 +00:00
John David Anglin d966ae6066 pa.c (pa_init_machine_status): Initialize pic_offset_table_save_rtx to NULL_RTX.
* pa.c (pa_init_machine_status): Initialize pic_offset_table_save_rtx
        to NULL_RTX.
        (hppa_expand_prologue): Delete code to save pic offset table register
        in the function prologue.
        * pa.h (PIC_OFFSET_TABLE_SAVE_RTX): Correct type in comment.
        * pa.md (call, call_value, sibcall, sibcall_value): Save the pic offset
        table register at the beginning of the function after the prologue.

From-SVN: r39351
2001-01-30 10:25:29 -07:00
Jeff Law 633254a097 Daily bump.
From-SVN: r39350
2001-01-30 10:25:12 -07:00
Benjamin Kosnik 1f63887a44 c_locale_generic.cc: Remove langinfo include.
2001-01-30   Benjamin Kosnik  <bkoz@redhat.com>

	* config/c_locale_generic.cc: Remove langinfo include.

From-SVN: r39349
2001-01-30 17:21:50 +00:00
Benjamin Kosnik 0214010c60 Preliminary named locales.
2001-01-29  Benjamin Kosnik  <bkoz@redhat.com>

	Preliminary named locales.
	* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): New macro.
	* aclocal.m4: Regenerate.
	* configure.in: Use it.
	* configure: Regerate.
	* src/Makefile.am (sources): Add c++locale.cc.
	(build_headers): Add c++locale.h.
	* src/Makefile.in: Regenerate.
	* config/c_locale_gnu.h: New file.
	* config/c_locale_gnu.cc: New file. Non-inline member functions
	for named locales, gnu-specific.
	* config/c_locale_generic.h: New file.
	* config/c_locale_generic.cc: New file. Non-inline member
	functions for named locales, generic version.
	* docs/html/configopts.html: Add documentation on new options.

	* include/bits/locale_facets.h (class _Messages): Remove.
	(class _Moneypunct): Remove.
	* src/locale-inst.cc: Remove.

	* include/bits/locale_facets.h (class _Collate): Remove.
	* src/locale-inst.cc (std): Remove.
	* src/locale.cc: And here.

	* include/bits/localefwd.h (locale::_M_coalesce): New
	function. Correctly put together multi-name locales.
	(_Impl(const _Impl&, category, size_t)): Remove.

	* include/bits/localefwd.h (locale::_Impl): Remove _M_construct_*
	member functions.
	(_M_normalize_category_names): Remove.
	(_M_replace_categories): Fix.

	* src/localename.cc (locale::_Impl::_M_construct_collate): Remove.
	(locale::_Impl::_M_construct_ctype): Remove.
	(locale::_Impl::_M_construct_monetary): Remove.
	(locale::_Impl::_M_construct_numeric): Remove.
	(locale::_Impl::_M_construct_time): Remove.
	(locale::_Impl::_M_construct_messages): Remove.

	* include/bits/locale_facets.h (_Bad_use_facet): Remove.
	(_Use_facet_failure_handle): Remove.
	* src/locale.cc: Remove definitions.
	* src/locale-inst.cc: And here.

	* testsuite/22_locale/ctor_copy_dtor.cc (test01): Fixup. Add tests.

	* src/localename.cc (locale::facet::_S_create_c_locale): Properly
	create and error-check underlying locale object.
	(locale::facet::_S_destroy_c_locale): Add, take care of properly
	tearing down underlying locale object.
	* include/bits/localefwd.h (locale::facet): Declare.
	* testsuite/22_locale/members.cc: Don't test "fr_FR" locale for
	correctness, as glibc apparently has incorrect info in it. Test
	with it when it works again.....

	* include/bits/localefwd.h (locale::_Impl::__vec_string):
	Remove. Number of categories is fixed at six, so just simplify and
	make this an array of strings.
	(locale::_Impl::_M_has_name): Remove.
	(locale::_Impl::_M_name): Remove.
	(locale::_Impl::_M_category_names): Turns into...
	(locale::_Impl::_M_names): ...this.
	(locale::_Impl::_M_has_same_name()): New function.
	* src/localename.cc (locale::_Impl::~_Impl()): Remove here.
	(locale::_Impl::_Impl(size_t __refs, string __str)): Simplify
	signature.
	* src/locale.cc (locale::name()): Construct mangled name
	accurately reflecting combined locale categories.

	* src/locale.cc (locale::classic()): Don't initialize here.
	* src/localename.cc (locale::_Impl::_Impl(size_t __num, size_t
	__refs, bool __has_name, string __str): Do it here.

	* include/bits/localefwd.h: _S_categories_num to
	_S_num_categories. _S_facets_num to _S_num_facets.
	(locale:🆔:id()): Explicitly set _M_index to zero.
	* src/locale.cc: Same.

	* src/locale.cc: (locale::locale(const char*)): Construct named
	locales uniquely.

	* src/locale.cc: Remove numpunct_byname ctors.
	* testsuite/22_locale/numpunct_byname.cc: New file.
	* testsuite/22_locale/numpunct.cc: New file.

	* include/bits/localefwd.h (class locale): Change data members to
	protected, from private.
	(_Impl::_M_get_c_locale): Add member function.
	(locale::facet::_M_get_global_impl()): Add member function.
	* include/bits/locale_facets.h (numpunct::_M_init): Change to take
	a __c_locale pointer.
	(numpunct::numpunct( __c_locale*, size_t)): Add additonal ctor for
	named locales.
	* testsuite/22_locale/members.cc: New file, test name and combine.

	* include/bits/locale_facets.h (class numpunct): Remove class
	_Punct and _Numpunct. Rewrite class numpunct to be correct for
	named locales.
	* include/bits/localefwd.h (locale::_Imp::_M_c_locale): Add.
	* src/localename.cc (_Impl::~_Impl()): Call __frelocale.
	(_Imp::_Impl(size_t, size_t, bool, string)) Initialize _M_c_locale.
	* src/locale-inst.cc: Remove _Numpunct, _Punct instantiations.
	* testsuite/22_locale/numpunct_char_members.cc: New file.

From-SVN: r39347
2001-01-30 09:18:51 +00:00
Lars Brinkhoff f25561bb8c * tm.texi (PUSH_ROUNDING): Remove duplicate lines.
From-SVN: r39346
2001-01-29 22:42:06 -07:00
John David Anglin 7ea9fcc649 pa.md (return): Revise comment for trivial return.
* pa.md (return): Revise comment for trivial return.
        (return_internal): Non-trivial return pattern for non-PIC code.
        (return_internal_pic): Non-trivial return pattern for PIC code.
        It uses the PIC register to ensure it is restored after
        function calls.
        (epilogue): Generate appropriate return for PIC and non-PIC code.

Co-Authored-By: Jeff Law <law@redhat.com>

From-SVN: r39345
2001-01-29 22:18:50 -07:00
Christopher Faylor 05d9f8b08c * config/i386/cygwin.h: Fix -mno-cygwin search path for link.
From-SVN: r39344
2001-01-30 04:56:08 +00:00
DJ Delorie 80c8b1aad6 combine.c (if_then_else_cond): Pass the correct mode to operand_subword() for constants.
* combine.c (if_then_else_cond): Pass the correct mode to
operand_subword() for constants.

From-SVN: r39342
2001-01-29 21:34:22 -05:00
Christopher Faylor f6fc3552ee cygwin.h: Add w32api to include search.
* config/i386/cygwin.h: Add w32api to include search.  Search different
directories in a cross-build environment.

From-SVN: r39341
2001-01-30 01:41:27 +00:00
Richard Henderson 2b5f2501ea * tree.h (TYPE_STUB_DECL): Add documentation.
From-SVN: r39340
2001-01-29 17:38:41 -08:00
Laurynas Biveinis 1270a9b381 sdbout.c (sdbout_one_type): Skip types with indeterminate size.
* sdbout.c (sdbout_one_type): Skip types with indeterminate size.
        (sdbout_field_types): Likwise.  Fix use of host_integerp.

From-SVN: r39339
2001-01-29 17:26:25 -08:00
Bryce McKinlay eb59e54788 java-tree.h: Remove JTI_INTEGER_NEGATIVE_ONE_NODE.
* java-tree.h: Remove JTI_INTEGER_NEGATIVE_ONE_NODE.
	* decl.c (init_decl_processing): Use integer_minus_one_node, not
	integer_negative_one_node.
	* expr.c (build_java_binop): Likewise.

From-SVN: r39337
2001-01-30 00:37:21 +00:00
Thomas Pfaff 9c7c6e6c1c mingw32.h: Override STARTFILE_SPEC and LINK_SPEC declared in cygwin.h.
* mingw32.h: Override STARTFILE_SPEC and LINK_SPEC declared in
cygwin.h.

From-SVN: r39336
2001-01-29 16:41:46 -05:00
Jeffrey Oldham f1e9980ad4 iris6.h (SUPPORTS_INIT_PRIORITY): Revise definition to use flag_gnu_linker.
2001-01-29  Jeffrey Oldham  <oldham@codesourcery.com>

	* config/mips/iris6.h (SUPPORTS_INIT_PRIORITY): Revise definition
	to use flag_gnu_linker.

From-SVN: r39335
2001-01-29 19:36:52 +00:00
Neil Booth 766ee68176 cpplib.c (T_BAD_DIRECTIVE): Remove.
* cpplib.c (T_BAD_DIRECTIVE): Remove.
        (_cpp_init_stacks): Loop from 0 to N_DIRECTIVES - 1.

From-SVN: r39334
2001-01-29 19:20:12 +00:00
Neil Booth 24274aab39 * gcc.dg/cpp/avoidpaste1.c: Fix typos.
From-SVN: r39333
2001-01-29 18:58:38 +00:00
Joseph Myers 718b8ea51f tree.c, tree.h (build_parse_node): Remove; was identical to build_nt.
* tree.c, tree.h (build_parse_node): Remove; was identical to
	build_nt.
	* c-lang.c (start_cdtor), objc/objc-act.c
	(build_module_descriptor): Use build_nt instead of
	build_parse_node.

cp:
	* decl2.c (build_expr_from_tree), lex.c (make_pointer_declarator,
	make_reference_declarator, make_call_declarator), method.c
	(implicitly_declare_fn), parse.y (namespace_using_decl,
	notype_unqualified_id, expr_or_declarator, new_type_id,
	after_type_declarator, direct_after_type_declarator,
	notype_declarator, complex_notype_declarator,
	complex_direct_notype_declarator, qualified_id,
	notype_qualified_id, overqualified_id, direct_new_declarator,
	absdcl, direct_abstract_declarator, conversion_declarator), pt.c
	(tsubst), semantics.c (begin_constructor_declarator): Use build_nt
	instead of build_parse_node.

From-SVN: r39332
2001-01-29 18:57:24 +00:00
Jakub Jelinek adc881318b i386.md (addqi_1_lea): Fix mode (QI instead of HI).
* config/i386/i386.md (addqi_1_lea): Fix mode (QI instead of HI).
	(testqi_1, andqi_2): If widening to SImode, make sure CONST_INT does
	not have any upper bits set.

	* gcc.c-torture/execute/20010129-1.c: New test.
	* gcc.c-torture/execute/20010129-1.x: Add -mcpu=i686 on ia32.

From-SVN: r39331
2001-01-29 19:31:35 +01:00
Phil Edwards 42c0c80add COPYING.LIB: Update to LGPL 2.1 from the FSF.
2001-01-29  Phil Edwards  <pme@sources.redhat.com>

	* COPYING.LIB:  Update to LGPL 2.1 from the FSF.

From-SVN: r39330
2001-01-29 13:32:47 +00:00
Jeff Law 02deb288db Daily bump.
From-SVN: r39329
2001-01-29 01:45:07 -07:00
Jeff Sturm 7be00c496f zextract.c (read_zip_archive): Read file_offset before writing zipd and consequently clobbering the header...
2000-01-24  Jeff Sturm  <jeff.sturm@commerceone.com>

	* zextract.c (read_zip_archive): Read file_offset before writing
	zipd and consequently clobbering the header contents.

(http://gcc.gnu.org/ml/gcc-patches/2001-01/msg02129.html)

From-SVN: r39328
2001-01-29 00:43:46 -08:00
Kaveh R. Ghazi f2d1f0ba55 stmt.c (estimate_case_costs): Use integer_minus_one_node.
* stmt.c (estimate_case_costs): Use integer_minus_one_node.

	* tree.c (build_common_tree_nodes_2): Set integer_minus_one_node.

	* tree.h (tree_index): Add new element TI_INTEGER_MINUS_ONE.
	(integer_minus_one_node): Define.

ch:
	* ch-tree.h (integer_minus_one_node): Moved to top level gcc
	directory.

	* decl.c (integer_minus_one_node): Likewise.
	(init_decl_processing): Don't set integer_minus_one_node.

cp:
	* cp-tree.h (cp_tree_index): Delete CPTI_MINUS_ONE.
	(minus_one_node): Moved to top level gcc directory.  Renamed
	to integer_minus_one_node.

	* init.c (init_init_processing): Don't set minus_one_node.
	(build_vec_init): Use integer_minus_one_node.

	* rtti.c (get_tinfo_decl_dynamic): Likewise.

From-SVN: r39325
2001-01-29 02:46:30 +00:00
Alexandre Oliva 4f92461a87 * Makefile.in (bootstrap2-lean): Fix typo.
From-SVN: r39324
2001-01-29 01:48:06 +00:00
Gabriel Dos Reis 4870f47246 README: Add more comment.
2001-01-28  Gabriel Dos Reis  <gdr@codesourcery.com>

        * testsuite/README: Add more comment.
        * testsuite/lib/libstdc++.exp: Tweak comment.

From-SVN: r39321
2001-01-28 15:13:08 +00:00
Jakub Jelinek 64b9f19994 Clarify comment.
From-SVN: r39320
2001-01-28 15:04:19 +01:00
Neil Booth 14e2799a89 * gcc.dg/cpp/avoidpaste1.c: Test case.
From-SVN: r39319
2001-01-28 11:27:22 +00:00
Neil Booth 26ec42ee4d cpphash.c (_cpp_cleanup_hashtable, [...]): Don't set fe_value.
* cpphash.c (_cpp_cleanup_hashtable, _cpp_lookup_with_hash)
        : Don't set fe_value.
        * cpplib.h (AVOID_LPASTE): New flag.
        (struct cpp_hashnode): Remove fe_value.
        * cpplex.c (cpp_avoid_paste): Don't paste '.' with a number.
        * cppmacro.c (builtin_macro): Don't set flags here.
        (replace_args): Set AVOID_LPASTE flag on first token of an
        argument, and the token following it.
        (cpp_get_token): Set AVOID_LPASTE flag on first token of a
        macro expansion, and on the token following it.  Do it for
        builtins too.
        * cppmain.c (scan_buffer): Avoid pasting only flagged tokens.

From-SVN: r39318
2001-01-28 11:22:23 +00:00
Jakub Jelinek 6001735ea0 optimize.c (copy_body_r): If MODIFY_EXPR has both arguments identical and they would be replaced with...
* optimize.c (copy_body_r): If MODIFY_EXPR has both arguments
	identical and they would be replaced with constant, remove
	MODIFY_EXPR from the tree.

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

From-SVN: r39317
2001-01-28 11:35:45 +01:00