1. 19 Apr, 2009 2 commits
  2. 18 Apr, 2009 26 commits
    • re PR c/27676 (gcc is overly strict in assignment to read-only data) · f37acdf9
      	PR c/27676
      	* c-typeck.c (readonly_warning): new.
      	(build_unary_op, build_modify_expr): Use readonly_warning for
      	storing into something readonly but not const-qualified.
      
      testsuite:
      	* gcc.dg/lvalue-5.c: New test.
      
      From-SVN: r146336
      Joseph Myers committed
    • 2009-04-18 Paolo Carlini <paolo.carlini@oracle.com> · 7d0a3061
      	Trim overlong ChangeLog entry.
      
      From-SVN: r146334
      Paolo Carlini committed
    • re PR c/22367 (constraints on '&' not fully implemented) · 2b4b7036
      	PR c/22367
      	* c-typeck.c (build_unary_op): Check for taking address of
      	expression of type void.
      
      testsuite:
      	* gcc.dg/lvalue-6.c, gcc.dg/lvalue-7.c: New tests.
      
      From-SVN: r146332
      Joseph Myers committed
    • * eh_type.cc (__cxa_current_exception_type) Mark throw(). · 5cf217ff
      	* unwind-cxx.h (__cxa_get_globals, __cxa_get_globals_fast): Mark const.
      	(__cxa_get_exception_ptr): Mark pure.
      	(__cxa_bad_cast, __cxa_bad_typeid): Mark noreturn
      	(__terminate): Makr throw ().
      	* exception (terminate): Mark throw().
      	(uncaught_exception): Mark pure.
      	* eh_ptr.cc (_M_safe_bool_dummy): Mark throw().
      	* guard.cc (__cxa_guard_abort, __cxa_guard_release): Mark throw().
      	* eh_terminate.cc (__terminate, terminate): Mark throw().
      	* vec.cc (__cxa_vec_cleanup): Mark throw().
      	* cxxabi.h (__cxa_vec_cleanup, __cxa_guard_release, __cxa_guard_abort): Mark throw ().
      	(__cxa_pure_virtual): Mark noreturn.
      	(__cxa_current_exception_type): Mark throw and pure.
      	* exception_ptr.h (operator ==, !=, _M_get, !, ==,
      	__cxa_exception_type): Mark pure.
      	(_M_safe_bool_dummy): Mark pure and const.
      
      From-SVN: r146331
      Jan Hubicka committed
    • pool_allocator.cc (_M_get_free_list, [...]): Mark throw () · 5d51b87a
      
      	* src/pool_allocator.cc (_M_get_free_list, _M_get_mutex): Mark throw ()
      	* src/mt_allocator.cc (_M_reclaim_block, _M_reclaim_block,
      	_M_destroy_thread_key): Mark throw ()
      	* debug.cc (_M_get_mutex, _M_attach_single, _M_detach_single,
      	_M_singular, _M_can_compare _M_get_mutex, _M_message,
      	_M_get_max_length): Mark throw ().
      	* include/debug/formatter.h (_M_message, _M_format_word,
      	_M_get_max_length): Mark throw ().
      	* include/debug/safe_base.h (_M_get_mutex, _M_attach_single,
      	_M_detach_single): Mark throw ().
      	(_M_singular, _M_can_compare, _M_get_mutex): Mark pure and throw ().
      	* include/ext/pool_allocator.h (_M_get_free_list): Mark const and
      	throw ()
      	(_M_get_mutex): Mark throw ().
      	* include/ext/mt_allocator.h (_M_reclaim_block): Mark throw ();
      	(_M_destroy_thread_key): Mark CONST and throw.
      	* include/bits/stl_list.h (swap, transfer, reverse, hook, unhook): Mark
      	throw ().
      
      From-SVN: r146330
      Jan Hubicka committed
    • condition_variable.cc (condition_variable, [...]): Mark throw() · 50a681c4
      
      	* src/condition_variable.cc (condition_variable,
      	condition_variable_any constructors): Mark throw()
      	* src/hash.cc (operator() for long double, string, and wstring): Mark
      	throw ().
      	* src/strstream.cc (strstreambuf constructors, freeze, str, pcount,
      	_M_setup, rdbuf, str): Mark throw ().
      	* src/chrono.cc (new): Mark throw ().
      	* include/std/system_error (system_category, generic_category): Mark
      	throw () and const.
      	* include/std/chrono (now): Mark throw ().
      	* include/std/condition_variable (condition_variable,
      	~condition_variable, condition_variable_any,
      	~condition_variable_any): Mark throw ().
      	* include/std/mutex (mutex): Mark throw ().
      	* include/bits/stl_list.h (swap, transfer, reverse, hook, unhook): Mark
      	throw.
      	* include/bits/functional_hash.h (operator()  on size_t): Mark pure and throw ().
      	* include/bits/locale_facets.tcc (__verify_grouping): Mark pure.
      	* include/bits/locale_classes.h (_S_initialize_once,
      	_S_clone_c_locale): Mark throw ().
      	(_S_get_c_name): Mark const and throw ().
      	(_M_id, _M_compare, _M_transform, _M_compare, _M_transform): Mark throw ().
      	* include/bits/locale_facets.h (__convert_to_v explicit instances):
      	Mark throw ().
      	(_M_convert_to_wmask, _M_initialize_ctype, _S_format_float): Mark throw ().
      	* include/bits/ios_base.h (_M_dispose_callbacks, _M_init, imbue,
      	ios_base): Mark throw ()
      	* include/bits/locale_facets_nonio.h (_M_put): Mark throw.
      	* include/backward/strstream (strstreambuf constructors): Mark throw ().
      	(str, freeze, _M_setupf): Mark throw ().
      	(pcount): Mark pure and throw ().
      	(rdbuf): Mark const and throw ().
      
      From-SVN: r146328
      Jan Hubicka committed
    • directives.c (parse_include): Pass true to check_eol. · 61cc8223
      libcpp:
      	* directives.c (parse_include): Pass true to check_eol.
      
      gcc/testsuite:
      	* gcc.dg/cpp/include5.c: New test.
      
      From-SVN: r146327
      Joseph Myers committed
    • cp-tree.h: Remove the prototype for insert_block. · 149ccdd4
      	* cp-tree.h: Remove the prototype for insert_block.
      	* decl.c (insert_block): Remove.
      
      From-SVN: r146326
      Kazu Hirata committed
    • re PR c/35210 (gcc incorrectly allows calling function returning "const void") · 3ce62965
      	PR c/35210
      	* c-typeck.c (build_function_call): Check for calling a function
      	with qualified void return types.  Call require_complete_type when
      	generating a trap.
      
      testsuite:
      	* gcc.dg/call-diag-2.c: New test.
      
      From-SVN: r146324
      Joseph Myers committed
    • re PR libstdc++/39802 (std::num_get fails to parse negative zero input correctly) · 2daad65e
      2009-04-18  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR libstdc++/39802
      	* include/bits/locale_facets.tcc (num_get<>::_M_extract_int
      	(_InIter, _InIter, ios_base&, ios_base::iostate&, _ValueT&)):
      	Always accept negative values, for unsigned types too.
      	* testsuite/22_locale/num_get/get/char/39802.cc: New.
      	* testsuite/22_locale/num_get/get/wchar_t/39802.cc: Likewise.
      
      From-SVN: r146323
      Paolo Carlini committed
    • cgraph.c (cgraph_make_edge, [...]): Set nothrow flag. · 2505c5ed
      	* cgraph.c (cgraph_make_edge, dump_cgraph_node, cgraph_set_call_stmt):
      	Set nothrow flag.
      	* cgraph.h (struct function): Reduce loop_nest to 30 bits; add
      	can_throw_external flag.
      	* ipa-reference.c (ipa_utils_reduced_inorder): Update call.
      	* ipa-pure-const.c (ignore_edge): New function.
      	(propagate): Compute order for NOTHROW computation; set NOTHROWs
      	only over can_throw_external edges.
      	(local_pure_const): Add nothrow flag.
      	* ipa-utils.c (searchc): Add ignore_edge callback.
      	(ipa_utils_reduced_inorder): Add ignore_edge callback.
      	* ipa-utils.h (ipa_utils_reduced_inorder): Update prototype.
      	(set_nothrow_function_flags): Update cgraph.
      	* tree-cfg.c (verify_stmt): Relax nothrow checking when in IPA mode.
      
      From-SVN: r146322
      Jan Hubicka committed
    • re PR preprocessor/39646 (__FILE__ breaks for empty file name) · c7f9c0b9
      libcpp:
      	PR preprocessor/39646
      	* include/line-map.h (enum lc_reason): Add LC_RENAME_VERBATIM.
      	* line-map.c (linemap_add): Handle LC_RENAME_VERBATIM.
      	* directives.c (do_line, do_linemarker): Use LC_RENAME_VERBATIM in
      	place of LC_RENAME.
      
      gcc/testsuite:
      	* gcc.dg/cpp/line8.c: New test.
      
      From-SVN: r146319
      Joseph Myers committed
    • formater.h: Include bits/c++config.h. · b8add594
      	* include/debug/formater.h: Include bits/c++config.h.
      	(_M_error): Mark noreturn.
      	* include/bits/c++config (_GLIBCXX_PURE, _GLIBCXX_CONST,
      	_GLIBCXX_NORETURN): New.
      	* include/bits/stl_tree.h (_Rb_tree_increment, _Rb_tree_increment,
      	_Rb_tree_decrement, _Rb_tree_decrement, _Rb_tree_black_count): Mark pure.
      	* include/c_compatibility/stdatomic.h (atomic_flag_test_and_set_explicit,
      	atomic_flag_clear_explicit, __atomic_flag_wait_explicit,
      	__atomic_flag_for_address): Mark by throw ().
      	* src/atomic.cc (atomic_flag_test_and_set_explicit,
      	atomic_flag_clear_explicit, __atomic_flag_wait_explicit,
      	__atomic_flag_for_address): Mark by throw ().
      
      From-SVN: r146317
      Jan Hubicka committed
    • re PR preprocessor/39647 (Syntax checks in #line not quite right) · a5cb563b
      libcpp:
      	PR preprocessor/39647
      	* directives.c (check_eol): Add parameter expand.
      	(do_undef, parse_include, do_line, do_linemarker, do_ident,
      	do_pragma_once, do_pragma_system_header, do_ifdef, do_ifndef,
      	do_else, do_endif, do_assert, do_unassert): All callers changed.
      	Pass true from do_line, false elsewhere.
      
      gcc/testsuite:
      	* gcc.dg/cpp/line7.c: New test.
      
      From-SVN: r146316
      Joseph Myers committed
    • re PR tree-optimization/39804 (internal compiler error: in propagate_necessity,… · 2586ba4b
      re PR tree-optimization/39804 (internal compiler error: in propagate_necessity, at tree-ssa-dce.c:754)
      
      2009-04-18  Richard Guenther  <rguenther@suse.de>
      
      	PR middle-end/39804
      	* tree-ssa-ccp.c (fold_stmt_1): New function factored from ...
      	(fold_stmt): ... this and ...
      	(fold_stmt_inplace): ... this.
      	(fold_stmt_1): Fold references in calls and asms.
      	* tree-cfg.c (remove_useless_stmts_cond): Use fold_stmt.
      
      	* gcc.target/i386/pr39804.c: New testcase.
      
      From-SVN: r146314
      Richard Guenther committed
    • tree-vrp.c (ssa_name_nonzero_p): Remove. · 1eefab17
      	* tree-vrp.c (ssa_name_nonzero_p): Remove.
      	* tree.h: Remove the prototype for ssa_name_nonzero_p.
      
      From-SVN: r146313
      Kazu Hirata committed
    • tree.c (function_args_count): Remove. · aa424b01
      	* tree.c (function_args_count): Remove.
      	* tree.h: Remove the prototype for function_args_count.
      
      From-SVN: r146312
      Kazu Hirata committed
    • tree-iterator.c (expr_only): Remove. · 613a896b
      	* tree-iterator.c (expr_only): Remove.
      	* tree.h: Remove the prototype for expr_only.
      
      From-SVN: r146311
      Kazu Hirata committed
    • reginfo.c (cannot_change_mode_set_regs): Remove. · 579e694c
      	* reginfo.c (cannot_change_mode_set_regs): Remove.
      	* rtl.h: Remove the prototype for cannot_change_mode_set_regs.
      
      From-SVN: r146310
      Kazu Hirata committed
    • avr.md (*rotlsi3_8, [...]): Check whether operands 0 and 1 overlaps. · ee7e3ad3
      	* config/avr/avr.md (*rotlsi3_8, *rotlsi3_16, *rotlsi3_24 ): Check
      	whether operands 0 and 1 overlaps.
      
      From-SVN: r146309
      Anatoly Sokolov committed
    • re PR fortran/39782 (IO depends on uninitialised value) · 0a629857
      2009-04-18  Janne Blomqvist  <jb@gcc.gnu.org>
      
      	PR libfortran/39782
      	* io/transfer.c (data_transfer_init): Don't flush before seek.
      	(finalize_transfer): Remove extra flush.
      
      From-SVN: r146308
      Janne Blomqvist committed
    • pr39496.c: Compile with -mtune=i686. · 8dd07c41
      	* gcc.target/i386/pr39496.c: Compile with -mtune=i686.
      	* g++.dg/other/pr39496.C: Likewise.
      
      From-SVN: r146306
      Eric Botcazou committed
    • re PR middle-end/36902 (Array bound warning with dead code after optimization) · 92ef7fb1
      2009-04-18  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR middle-end/36902
      	* tree-vrp.c (check_array_ref): Pass a location_t instead of a
      	pointer. Use warning_at instead of warning.
      	(search_for_addr_array): Likewise.
      	(check_array_bounds): Likewise.
      	(check_all_array_refs): Check that the incoming edge is not in the
      	list of edges to be removed.
      	(check_all_array_refs): Avoid the temporal pointer.
      	(vrp_visit_cond_stmt): Fix typo.
      	(simplify_switch_using_ranges): Handle the case where the switch
      	index is an integer constant.
      testsuite/
      	* gcc.dg/pr36902.c: New.
      
      From-SVN: r146305
      Manuel López-Ibáñez committed
    • * doc/extend.texi, doc/invoke.texi: Fix typos. · c782f1dd
      From-SVN: r146303
      Kazu Hirata committed
    • Daily bump. · 8d22d141
      From-SVN: r146302
      GCC Administrator committed
  3. 17 Apr, 2009 12 commits