1. 22 May, 2004 27 commits
    • re PR libstdc++/12854 (libstdc++ vs. -Weffc++) · 26c691a8
      
      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.
      
      From-SVN: r82153
      Benjamin Kosnik committed
    • builtins.c (expand_builtin_strstr, [...]): Replace calls to build with calls to… · d6dc556b
      builtins.c (expand_builtin_strstr, [...]): Replace calls to build with calls to build2, build3 or omit_one_operand.
      
      
      	* 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.
      
      From-SVN: r82151
      Roger Sayle committed
    • testsuite_hooks.h (func_callback): Declare copy constructor and assignment operator private. · f4a1faa5
      
      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.
      
      From-SVN: r82150
      Benjamin Kosnik committed
    • re PR c++/15285 (instantiate_type ICE when forming pointer to template function) · 0deb916c
      	PR c++/15285
      	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.
      
      From-SVN: r82149
      Mark Mitchell committed
    • cxxabi.h: Remove duplicated and useless public and private keywords in class declarations. · 52ceb039
      
      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.
      
      From-SVN: r82147
      Benjamin Kosnik committed
    • Fix function name in last entry. · 8e657c46
      From-SVN: r82146
      Richard Sandiford committed
    • mips.c (mips_asm_file_start): Emit a .gcc_compiled_longXX section when generating EABI code. · 0a0de3bf
      	* config/mips/mips.c (mips_asm_file_start): Emit a .gcc_compiled_longXX
      	section when generating EABI code.
      
      From-SVN: r82145
      Richard Sandiford committed
    • re PR c++/15507 (hang laying out union) · 1e2e9f54
      	PR c++/15507
      	* 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.
      
      From-SVN: r82144
      Mark Mitchell committed
    • re PR bootstrap/15546 (Bootstrap stage3: Undefined references to basic_string) · 79bba51c
      2004-05-22  Andrew Pinski  <pinskia@physics.uc.edu>
      
      	PR 15546
      	* config/i386/i386.c (output_pic_addr_const <case SYMBOL_REF>):
      	Call mark_decl_referenced on the SYMBOL_REF_DECL.
      
      From-SVN: r82141
      Andrew Pinski committed
    • [multiple changes] · 6f312d18
      2004-05-22  Andrew Pinski  <pinskia@physics.uc.edu>
      
      	* 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.
      
      From-SVN: r82140
      Zack Weinberg committed
    • abi_check.cc: Add unistd.h. · 6ad70bf2
      
      2004-05-22  Benjamin Kosnik  <bkoz@redhat.com>
      
      	* testsuite/abi_check.cc: Add unistd.h.
      
      From-SVN: r82137
      Benjamin Kosnik committed
    • dump-parse-tree.c (gfc_show_equiv): New function. · 1854117e
      	* dump-parse-tree.c (gfc_show_equiv): New function.
      	(gfc_show_namespace): Use it.
      
      From-SVN: r82136
      Paul Brook committed
    • * doc/contrib.texi: Add g77 contributors. · 2dec00bf
      From-SVN: r82135
      Joseph Myers committed
    • re PR fortran/13249 (Error when using COMMON) · b6720768
      	PR fortran/13249
      	* symbol.c (gfc_add_common): Disable checks to work around other more
      	fundamental inadequacies.
      
      From-SVN: r82134
      Victor Leikehman committed
    • name-lookup.c (check_for_out_of_scope_variable): Avoid ICE by returning when… · ae5cbc33
      name-lookup.c (check_for_out_of_scope_variable): Avoid ICE by returning when TREE_TYPE is error_mark_node.
      
      
      	* 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.
      
      From-SVN: r82133
      Roger Sayle committed
    • trans-decl.c (gfc_get_extern_function_decl): Set DECL_IS_PURE only for functions. · b7e6a6b3
      	* trans-decl.c (gfc_get_extern_function_decl): Set DECL_IS_PURE
      	only for functions.
      	(gfc_build_function_decl): Likewise.
      
      From-SVN: r82132
      Tobias Schlüter committed
    • check.c (gfc_check_system_clock): New function. · 21fdfcc1
      	* check.c (gfc_check_system_clock): New function.
      	* 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.
      
      From-SVN: r82131
      Steven G. Kargl committed
    • invoke.texi: Document -Wunderflow and spell check. · 2d8b59df
      	* invoke.texi: Document -Wunderflow and spell check.
      	* 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.
      
      From-SVN: r82130
      Steven G. Kargl committed
    • calls.c (initialize_argument_information): Forbid sibcalls if a callee-copied… · 9fd47435
      calls.c (initialize_argument_information): Forbid sibcalls if a callee-copied argument is stored in the current function's...
      
      	* calls.c (initialize_argument_information): Forbid sibcalls if a
      	callee-copied argument is stored in the current function's frame.
      
      From-SVN: r82129
      Richard Sandiford committed
    • re PR libstdc++/15565 ([3.4 only] SLES9: leading + sign for unsigned int with showpos) · fea6ecb7
      2004-05-22  Paolo Carlini  <pcarlini@suse.de>
      
      	PR libstdc++/15565
      	* include/bits/locale_facets.tcc (__int_to_char(unsigned long),
      	__int_to_char(unsigned long long)): Showpos is not relevant
      	for unsigned types.
      	* testsuite/22_locale/num_put/put/char/15565.cc: New.
      	* testsuite/22_locale/num_put/put/wchar_t/15565.cc: New.
      
      	* testsuite/22_locale/num_put/put/wchar_t/1.cc: Use L for the fill
      	char.
      	* testsuite/22_locale/num_put/put/wchar_t/2.cc: Likewise.
      	* testsuite/22_locale/num_put/put/wchar_t/3.cc: Likewise.
      	* testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise.
      	* testsuite/22_locale/num_put/put/wchar_t/5.cc: Likewise.
      	* testsuite/22_locale/num_put/put/wchar_t/6.cc: Likewise.
      	* testsuite/22_locale/num_put/put/wchar_t/8.cc: Likewise.
      
      From-SVN: r82128
      Paolo Carlini committed
    • fix-header.c (read_scan_file): Update for add_path change. · 0bc0f41d
      2004-05-22  Eric Christopher  <echristo@redhat.com>
      
      	* fix-header.c (read_scan_file): Update for add_path change.
      
      From-SVN: r82127
      Eric Christopher committed
    • run_doxygen: Bump required version. · 2461ecbe
      2004-05-21  Matthias Klose  <doko@debian.org>
      
      	* docs/doxygen/run_doxygen:  Bump required version.
      
      From-SVN: r82125
      Matthias Klose committed
    • abi.html (libgcc_s): Additions suggested by Matthias Klose. · a3e14d39
      
      2004-05-21  Benjamin Kosnik  <bkoz@redhat.com>
      
      	* docs/html/abi.html (libgcc_s): Additions suggested by Matthias Klose.
      	* docs/doxygen/Intro.3: Subtractions suggested by Phil Edwards.
      
      From-SVN: r82122
      Benjamin Kosnik committed
    • c.opt (Wmissing-include-dirs): New. · b02398bd
      	* c.opt (Wmissing-include-dirs): New.
      	* c-opts.c (c_common_handle_option): Pass true for user_supplied_p
      	to add_path () for -I, but false for OPT_idirafter, OPT_iquote and
      	OPT_isystem. Handle case OPT_Wmissing_include_dirs.
      	* c-incpath.h (add_path): Add fourth (bool) argument.
      	* c-incpath.c (add_env_var_paths): Pass false to add_path ().
      	(add_standard_paths): Likewise.
      	(remove_duplicates) [REASON_NOENT]: Warn if -Wmissing-include-dirs
      	is used and the directory was user-supplied via -I.
      	(add_path): Set p->user_supplied_p.  Remove duplicated code by
      	using add_cpp_dir_path ().
      	* cpplib.h (struct cpp_options): Add warn_missing_include_dirs.
      	(struct cpp_dir): Add user_supplied_p.
      	* doc/invoke.texi (Warning Options): Document new option.
      
      [testsuite]
      	* gcc.dg/cpp/Wmissingdirs.c: New.
      
      From-SVN: r82121
      Ben Elliston committed
    • fold-const.c (fold_read_from_constant_string): Convert result to requested type. · 12fea1f9
      	* fold-const.c (fold_read_from_constant_string): Convert result to
      	requested type.
      
      From-SVN: r82120
      Ulrich Weigand committed
    • Daily bump. · c5042c5c
      From-SVN: r82118
      GCC Administrator committed
  2. 21 May, 2004 13 commits