1. 24 May, 2004 5 commits
    • paolo's avatar
      2004-05-24 Paolo Carlini <pcarlini@suse.de> · 7b73f71f
      paolo authored
      	* include/bits/istream.tcc (ignore): Correctly deal with
      	n == numeric_limits<streamsize>::max().
      	* testsuite/27_io/basic_istream/ignore/char/2.cc: New.
      
      	* include/bits/istream.tcc (basic_istream<>::getline): Prefer
      	'_M_gcount + 1 < __n' to '--__n; _M_gcount < __n', just in case
      	__n == numeric_limits<>::min().
      
      	* include/bits/istream.tcc: Minor tweaks.
      
      	* testsuite/21_strings/basic_string/inserters_extractors/char/10.cc:
      	Tighten.
      	* testsuite/21_strings/basic_string/inserters_extractors/char/11.cc:
      	Likewise.
      	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/10.cc:
      	Likewise.
      	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/11.cc:
      	Likewise.
      	* testsuite/27_io/basic_istream/getline/char/5.cc: Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82198 138bc75d-0d04-0410-961f-82ee72b054a4
      7b73f71f
    • bonzini's avatar
      2004-05-23 Paolo Bonzini <bonzini@gnu.org> · 42bbc7e6
      bonzini authored
      	* gcc.c (struct prefix_list): Add forward declaration.
      	(do_spec_path): New function, extracted from...
      	(do_spec_1) <'D'>: ... here.  Drop support for
      	SPACE_AFTER_L_OPTION.
      	(do_spec_1) <'I'>: Use do_spec_path.
      	(process_command): Do not store the 'include' suffix
      	in include_prefixes.
      	* system.h: Poison SPACE_AFTER_L_OPTION.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82197 138bc75d-0d04-0410-961f-82ee72b054a4
      42bbc7e6
    • sayle's avatar
      · f4d47aeb
      sayle authored
      	* fold-const.c (non_lvalue): Explicitly list the tree codes that
      	need to be wrapped by NON_LVALUE_EXPR, instead of those that don't.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82195 138bc75d-0d04-0410-961f-82ee72b054a4
      f4d47aeb
    • mmitchel's avatar
      PR c++/15044 · e67a67ea
      mmitchel authored
      	* parser.c (cp_parser_class_head): Robustify.
      
      	PR c++/15317
      	* parser.c (cp_parser_decl_specifier_seq): Correct error in
      	comment.
      	(cp_parser_constructor_declarator_p): Treat attributes
      	as decl-specifiers.
      
      	PR c++/15329
      	* typeck.c (build_unary_op): Do not attempt to resolve casts to
      	base classes in templates.
      
      	PR c++/15044
      	* g++.dg/template/error12.C: New test.
      
      	PR c++/15317
      	* g++.dg/ext/attrib15.C: New test.
      
      	PR c++/15329
      	* g++.dg/template/ptrmem9.C: New test.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82191 138bc75d-0d04-0410-961f-82ee72b054a4
      e67a67ea
    • gccadmin's avatar
      Daily bump. · ce3af537
      gccadmin authored
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82180 138bc75d-0d04-0410-961f-82ee72b054a4
      ce3af537
  2. 23 May, 2004 16 commits
  3. 22 May, 2004 19 commits
    • bkoz's avatar
      · c183af9a
      bkoz authored
      2004-05-22  Benjamin Kosnik  <bkoz@redhat.com>
      
      	PR libstdc++/12854
      	Fixups for -Weffc++.
      	* include/bits/basic_string.h (basic_string::operator=): Return
      	pointer to this instead of result of assign. Although redundant,
      	this doesn't impact resultant codegen.
      
      	* include/bits/locale_facets.h (__numpunct_cache): Declare
      	assignment opxserator and copy constructor private.
      	(__timepunct_cache): Same.
      	(__moneypunct_cache): Same.
      	(collate): Use member initialization list for _M_c_locale_collate.
      	* config/locale/gnu/messages_members.h: Same.
      	* config/locale/gnu/time_members.h (__timepunct): Same.
      	* src/codecvt.cc: Use member initialization list to initialize
      	_M_c_locale_codecvt.
      	* src/ctype.cc: Same, with _M_c_locale_ctype and _M_narrow_ok.
      	* config/os/gnu-linux/ctype_noninline.h: Same.
      	* src/locale.cc (_Impl): Same.
      	* src/locale_init.cc: Same.
      	* src/localename.cc: Same.
      
      	* include/bits/basic_ios.h (basic_ios): Complete member
      	initialization list.
      	* include/bits/istream.tcc (basic_istream::sentry): Same.
      	* include/bits/ostream.tcc (basic_ostream::sentry): Same.
      	* include/bits/fstream.tcc (basic_filebuf): Add _M_lock and
      	_M_pback to member initialization list.
      	* include/std/std_streambuf.h: Same.
      	* include/std/std_sstream.h: Same, for _M_mode.
      	* src/ios.cc (ios_base): Same.
      
      	* include/ext/rope: Make derived classes match exception
      
      	 specifications. Add copy constructors and assignment operators.
      
      	* include/debug/safe_base.h (_Safe_sequence_base): Declare copy
      	constructor and assignment operator protected.
      	(_Safe_iterator_base): Same.
      	* include/debug/formatter.h (_Error_formatter): Define copy
      	constructor and assignment operator.
      
      	* include/backward/strstream: Declare assignment operator and copy
      	constructor private.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82153 138bc75d-0d04-0410-961f-82ee72b054a4
      c183af9a
    • sayle's avatar
      · 05abc81b
      sayle authored
      	* builtins.c (expand_builtin_strstr, expand_builtin_strchr,
      	expand_builtin_strrchr, expand_builtin_strpbrk,
      	expand_builtin_mempcpy, expand_builtin_memcmp,
      	expand_builtin_strcmp, expand_builtin_strncmp,
      	expand_builtin_strcat, std_expand_builtin_va_start,
      	std_expand_builtin_va_arg, expand_builtin_va_copy,
      	expand_builtin_signbit, fold_builtin_cabs,
      	fold_builtin_logarithm, fold_builtin_mempcpy,
      	fold_builtin_signbit, fold_builtin_isascii,
      	fold_builtin_toascii, fold_builtin_isdigit,
      	fold_builtin_1, build_function_call_expr,
      	simplify_builtin_strchr, simplify_builtin_strrchr,
      	simplify_builtin_strpbrk, simplify_builtin_strncpy,
      	simplify_builtin_memcmp, simplify_builtin_strcmp,
      	simplify_builtin_strncmp, simplify_builtin_strncat,
      	simplify_builtin_strspn, simplify_builtin_strcspn,
      	simplify_builtin_fputs, simplify_builtin_sprintf): Replace calls
      	to build with calls to build2, build3 or omit_one_operand.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82151 138bc75d-0d04-0410-961f-82ee72b054a4
      05abc81b
    • bkoz's avatar
      · 4abf7a23
      bkoz authored
      2004-05-22  Benjamin Kosnik  <bkoz@redhat.com>
      
      	* testsuite/testsuite_hooks.h (func_callback): Declare copy
      	constructor and assignment operator private.
      	* testsuite/23_containers/deque/cons/clear_allocator.cc: Match
      	exception specifications of base class.
      	* testsuite/23_containers/list/cons/clear_allocator.cc: Same.
      	* testsuite/23_containers/vector/cons/clear_allocator.cc: Same.
      	* testsuite/23_containers/vector/bool/clear_allocator.cc: New.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82150 138bc75d-0d04-0410-961f-82ee72b054a4
      4abf7a23
    • mmitchel's avatar
      PR c++/15285 · df6f8740
      mmitchel authored
      	PR c++/15299
      	* pt.c (build_non_dependent_expr): Expand the set of tree nodes
      	recognized as overloaded functions.
      
      	PR c++/15285
      	PR c++/15299
      	* g++.dg/template/non-dependent5.C: New test.
      	* g++.dg/template/non-dependent6.C: New test.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82149 138bc75d-0d04-0410-961f-82ee72b054a4
      df6f8740
    • bkoz's avatar
      · 0a421700
      bkoz authored
      2004-05-22  Benjamin Kosnik  <bkoz@redhat.com>
      
      	* libsupc++/cxxabi.h: Remove duplicated and useless public and
              private keywords in class declarations. Format. Use
              stddef.h. Expose declarations to "C" compilation.
              * libsupc++/tinfo.cc (__upcast_result): Add copy constructor and
              assignment operator.
              (__dyncast_result): Same.
              * libsupc++/vec.cc (uncatch_exception): Same, use member
              initialization list.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82147 138bc75d-0d04-0410-961f-82ee72b054a4
      0a421700
    • rsandifo's avatar
      Fix function name in last entry. · 9f5b2f1c
      rsandifo authored
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82146 138bc75d-0d04-0410-961f-82ee72b054a4
      9f5b2f1c
    • rsandifo's avatar
      * config/mips/mips.c (mips_asm_file_start): Emit a .gcc_compiled_longXX · 07090b27
      rsandifo authored
      	section when generating EABI code.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82145 138bc75d-0d04-0410-961f-82ee72b054a4
      07090b27
    • mmitchel's avatar
      PR c++/15507 · 550bbfa8
      mmitchel authored
      	* class.c (layout_nonempty_base_or_field): Do not try to avoid
      	layout conflicts for unions.
      
      	PR c++/15542
      	* typeck.c (build_x_unary_op): Instantiate template class
      	specializations before looking for "operator &".
      
      	PR c++/15427
      	* typeck.c (complete_type): Layout non-dependent array types, even
      	in templates.
      
      	PR c++/15287
      	* typeck.c (build_unary_op): Do not optimize "&x[y]" when in a
      	template.
      
      	PR c++/15507
      	* g++.dg/inherit/union1.C: New test.
      
      	PR c++/15542
      	* g++.dg/template/addr1.C: New test.
      
      	PR c++/15427
      	* g++.dg/template/array5.C: New test.
      
      	PR c++/15287
      	* g++.dg/template/array6.C: New test.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82144 138bc75d-0d04-0410-961f-82ee72b054a4
      550bbfa8
    • zack's avatar
      2004-05-22 Andrew Pinski <pinskia@physics.uc.edu> · b6c9b305
      zack authored
      	PR 15546
      	* config/i386/i386.c (output_pic_addr_const <case SYMBOL_REF>):
      	Call mark_decl_referenced on the SYMBOL_REF_DECL.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82141 138bc75d-0d04-0410-961f-82ee72b054a4
      b6c9b305
    • zack's avatar
      2004-05-22 Andrew Pinski <pinskia@physics.uc.edu> · e1232ce2
      zack authored
      	* c-common.c (c_common_truthvalue_conversion): Handle
      	UNEQ_EXPR, UNLE_EXPR, UNGE_EXPR, UNLT_EXPR, UNGT_EXPR,
      	ORDERED_EXPR, and UNORDERED_EXPR as comparison operators,
      	i.e. set the type to truthvalue_type_node and return.
      
      2004-05-22  Zack Weinberg  <zack@codesourcery.com>
      
             * tree.h (struct tree_decl): Add possibly_inlined bit.
      	(DECL_POSSIBLY_INLINED): New accessor macro.
      	* cgraph.h: Remove declaration of cgraph_inline_hash.
      	* cgraph.c: Remove definition of cgraph_inline_hash.
      	(hash_node): Revert to hashing DECL_UID.
      	(eq_node): Take two pointers to cgraph_node structures.
      	Compare DECL_UIDs.
      	(cgraph_remove_node): Pass the node directly to htab_find_slot.
      	(cgraph_varpool_hash_node): Rename hash_varpool_node;
      	hash on DECL_UID.
      	(eq_cgraph_varpool_node): Rename eq_varpool_node; take two
      	pointers to cgraph_varpool_node structures; compare DECL_UIDs.
      	(cgraph_node): Allocate a temporary node on the stack, fill in
      	its DECL field, and pass that to htab_find_slot.
      	(cgraph_varpool_node): Likewise.
      	(cgraph_function_possibly_inlined_p): If global info is ready,
      	return the DECL_POSSIBLY_INLINED bit.
      	* cgraphunit.c (cgraph_mark_inline_edge): Set DECL_POSSIBLY_INLINED
      	instead of mucking with cgraph_inline_hash.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82140 138bc75d-0d04-0410-961f-82ee72b054a4
      e1232ce2
    • pbrook's avatar
      * intrinsic.c (add_subroutines): Use add_sym_3s for random_seed. · c764bbd1
      pbrook authored
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82139 138bc75d-0d04-0410-961f-82ee72b054a4
      c764bbd1
    • bkoz's avatar
      · 8ec10cb4
      bkoz authored
      2004-05-22  Benjamin Kosnik  <bkoz@redhat.com>
      
      	* testsuite/abi_check.cc: Add unistd.h.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82137 138bc75d-0d04-0410-961f-82ee72b054a4
      8ec10cb4
    • pbrook's avatar
      * dump-parse-tree.c (gfc_show_equiv): New function. · bdeb682d
      pbrook authored
      	(gfc_show_namespace): Use it.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82136 138bc75d-0d04-0410-961f-82ee72b054a4
      bdeb682d
    • jsm28's avatar
      * doc/contrib.texi: Add g77 contributors. · 0fff7a9b
      jsm28 authored
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82135 138bc75d-0d04-0410-961f-82ee72b054a4
      0fff7a9b
    • pbrook's avatar
      PR fortran/13249 · d63f6f0c
      pbrook authored
      	* symbol.c (gfc_add_common): Disable checks to work around other more
      	fundamental inadequacies.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82134 138bc75d-0d04-0410-961f-82ee72b054a4
      d63f6f0c
    • sayle's avatar
      · 8db6f235
      sayle authored
      	* name-lookup.c (check_for_out_of_scope_variable): Avoid ICE by
      	returning when TREE_TYPE is error_mark_node.
      	* typeck.c (require_complete_type): Return error_mark_node if
      	value's type is an error_mark_node.
      
      	* g++.dg/lookup/forscope2.C: New test case.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82133 138bc75d-0d04-0410-961f-82ee72b054a4
      8db6f235
    • pbrook's avatar
      * trans-decl.c (gfc_get_extern_function_decl): Set DECL_IS_PURE · be393645
      pbrook authored
      	only for functions.
      	(gfc_build_function_decl): Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82132 138bc75d-0d04-0410-961f-82ee72b054a4
      be393645
    • pbrook's avatar
      * check.c (gfc_check_system_clock): New function. · 3db98e11
      pbrook authored
      	* intrinsic.c (add_sym_3s): New function.
      	(add_subroutines): Use it.
      	* intrinsic.h (gfc_check_system_clock, gfc_resolve_system_clock):
      	Add prototypes.
      	* iresolve.c (gfc_resolve_system_clock): New function.
      libgfortran/
      	* intrinsics/system_clock: New file.
      	* Makefile.am: Add intrinsics/system_clock.c.
      	* Makefile.in: Regenerate.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82131 138bc75d-0d04-0410-961f-82ee72b054a4
      3db98e11
    • pbrook's avatar
      * invoke.texi: Document -Wunderflow and spell check. · 9857bf0d
      pbrook authored
      	* lang.opt: Add Wunderflow.
      	* gfortran.h (gfc_option_t): Add warn_underflow option.
      	* options.c (gfc_init_options, set_Wall): Use it.
      	* primary.c (match_real_constant): Explicitly handle UNDERFLOW.
      	* arith.c (gfc_arith_uminus, gfc_arith_plus, gfc_arith_minus,
      	gfc_arith_times, gfc_arith_divide, gfc_arith_power, gfc_real2real,
      	gfc_real2complex, gfc_complex2real, gfc_complex2complex): Ditto.
      	* arith.c (common_logarithm): Fix typo in comment.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82130 138bc75d-0d04-0410-961f-82ee72b054a4
      9857bf0d