aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2009-04-20* gcc-interface/Make-lang.in: Update dependencies.Arnaud Charlet2-24/+34
From-SVN: r146377
2009-04-20[multiple changes]Arnaud Charlet7-4/+38
2009-04-20 Eric Botcazou <ebotcazou@adacore.com> * adaint.h (__gnat_lwp_self): Declare on Linux. * adaint.c (__gnat_os_filename): Add ATTRIBUTE_UNUSED on 'filename'. 2009-04-20 Robert Dewar <dewar@adacore.com> * exp_ch5.adb, usage.adb, back_end.adb, opt.ads: Implement front-end part of -fpreserve-control-flow switch. From-SVN: r146376
2009-04-20[multiple changes]Arnaud Charlet9-51/+69
2009-04-20 Bob Duff <duff@adacore.com> * rtsfind.adb: Minor comment fix 2009-04-20 Robert Dewar <dewar@adacore.com> * exp_aggr.adb: Minor reformatting Minor code reorganization (use Nkind_In) * g-socket.adb: Minor reformatting * g-socket.ads: Minor comment fix * s-auxdec.ads: Minor comment and organization update. * s-auxdec-vms_64.ads: Minor comment and organization update. * sem_ch10.adb: Minor addition of ??? comment * sem_disp.adb: Minor reformatting From-SVN: r146375
2009-04-20[multiple changes]Arnaud Charlet4-23/+204
2009-04-20 Ed Schonberg <schonberg@adacore.com> * inline.adb (Add_Inlined_Subprogram): Do not place on the back-end list a caller of an inlined subprogram, if the caller itself is not called. 2009-04-20 Pascal Obry <obry@adacore.com> * adaint.c: Disable use of ACL on network drives. 2009-04-20 Arnaud Charlet <charlet@adacore.com> * gnat_ugn.texi: Add examples. From-SVN: r146374
2009-04-20g-socket.ads (Abort_Selector): Clarify documentation.Thomas Quinot2-7/+13
2009-04-20 Thomas Quinot <quinot@adacore.com> * g-socket.ads (Abort_Selector): Clarify documentation. From-SVN: r146373
2009-04-20Update comments.Arnaud Charlet2-19/+15
From-SVN: r146372
2009-04-20[multiple changes]Arnaud Charlet6-40/+30
2009-04-20 Arnaud Charlet <charlet@adacore.com> * opt.ads (Inspector_Mode): Update documentation of this flag. 2009-04-20 Thomas Quinot <quinot@adacore.com> * g-socket.ads: Minor reformatting * socket.c, gsocket.h (__gnat_get_h_errno, VxWorks case): No need to consider S_resolvLib error codes since we only use the hostLib wrappers. 2009-04-20 Eric Botcazou <ebotcazou@adacore.com> * sem_ch3.adb (Build_Derived_Private_Type): Insert the declaration of the Underlying_Record_View after that of the derived type. From-SVN: r146371
2009-04-20[multiple changes]Arnaud Charlet10-82/+190
2009-04-20 Arnaud Charlet <charlet@adacore.com> * switch-c.adb (Scan_Front_End_Switches): Disable front-end inlining in inspector mode. 2009-04-20 Javier Miranda <miranda@adacore.com> * sem_ch6.adb (New_Overloaded_Entity): Minor reformating. * sem_ch6.ads (Subtype_Conformant, Type_Conformant): Add missing documentation. * exp_aggr.adb (Build_Record_Aggr_Code): Code cleanup. * sem_disp.adb (Check_Dispatching_Operation): Set attribute Is_Dispatching_Operation in internally built overriding subprograms. 2009-04-20 Doug Rupp <rupp@adacore.com> * s-auxdec-vms_64.ads (Integer_{8,16,32,64}_Array): New array types. * s-auxdec.ads: Likewise 2009-04-20 Ed Schonberg <schonberg@adacore.com> * sem_ch3.adb (Find_Type_Name): Reject the completion of a private type by an interface. * exp_ch6.adb (Expand_Call): Inline To_Address unconditionally, to minimze difference in expanded tree when compiled as spec of the main unit, or as a spec in the context of another unit. From-SVN: r146370
2009-04-20[multiple changes]Arnaud Charlet6-72/+100
2009-04-20 Hristian Kirtchev <kirtchev@adacore.com> * a-calend.adb: Remove types char_Pointer, int, tm and tm_Pointer. (localtime_tzoff): This routine no longer accepts an actual of type tm_Pointer. (UTC_Time_Offset): Remove local variable Secs_TM. * sysdep.c (__gnat_localtime_tzoff): This routine no longer accepts an actual of type struct tm*. Add local variable of type struct tm for all targets that provide localtime_r and need to invoke it. 2009-04-20 Thomas Quinot <quinot@adacore.com> * s-oscons-tmplt.c, g-socket.adb, g-socket.ads (GNAT.Sockets.Resolve_Error): Add case of EPIPE Add case of EAGAIN for platforms where it is not equal to EWOULDBLOCK From-SVN: r146369
2009-04-20[multiple changes]Arnaud Charlet7-75/+118
2009-04-20 Robert Dewar <dewar@adacore.com> * sem_ch3.adb: Minor reformatting * lib-load.adb: Minor reformatting * sem_ch4.adb: Minor reformatting 2009-04-20 Robert Dewar <dewar@adacore.com> * namet-sp.ads, namet-sp.adb (Is_Bad_Spelling_Of): Implement new spec (equal values => False). 2009-04-20 Ed Schonberg <schonberg@adacore.com> * exp_ch6.adb (Is_Null_Procedure): predicate is global, so that calls to null procedures can be inlined unconditionally. From-SVN: r146368
2009-04-20trans.c (call_to_gnu): When creating the copy for a non-addressable ↵Eric Botcazou4-7/+72
parameter passed by reference... * gcc-interface/trans.c (call_to_gnu): When creating the copy for a non-addressable parameter passed by reference, do not convert the actual if its type is already the nominal type, unless it is of self-referential size. From-SVN: r146367
2009-04-20[multiple changes]Arnaud Charlet5-14/+54
2009-04-20 Arnaud Charlet <charlet@adacore.com> * gnat_ugn.texi: Fix typos. 2009-04-20 Robert Dewar <dewar@adacore.com> * debug.adb, gnat1drv.adb, sem_ch13.adb: Add circuitry to Validate_Unchecked_Warnings to suppress warnings about size or alignment or extra bits if either type involved has pragma Warnings (Off) set for the type entity. From-SVN: r146366
2009-04-20Daily bump.GCC Administrator1-1/+1
From-SVN: r146363
2009-04-19cygwin-stdint.h (INTPTR_TYPE): Remove "long".Dave Korn2-2/+7
* config/i386/cygwin-stdint.h (INTPTR_TYPE): Remove "long". (UINTPTR_TYPE): Likewise. From-SVN: r146360
2009-04-19re PR c/37481 (-pedantic accepts flexible array member = "string" ↵Joseph Myers4-0/+32
initialization) PR c/37481 * c-typeck.c (digest_init): Check for initializing an array with a string literal. testsuite: * gcc.dg/c99-flex-array-7.c: New test. From-SVN: r146359
2009-04-19re PR c/19771 (VLA deallocation)Joseph Myers4-0/+35
PR c/19771 * c-semantics.c (pop_stmt_list): Propagate STATEMENT_LIST_HAS_LABEL to parent statement list. testsuite: * gcc.c-torture/execute/vla-dealloc-1.c: New test. From-SVN: r146358
2009-04-19mips.h (mips_tune_attr): New macro.Adam Nemet3-1/+10
* config/mips/mips.h (mips_tune_attr): New macro. * config/mips/mips.md (cpu): Use it. From-SVN: r146357
2009-04-19re PR c/38243 (Restrict constraint violation not an error with -pedantic-errors)Joseph Myers4-0/+24
PR c/38243 * c-decl.c (shadow_tag_warned): Diagnose use of restrict when declaring a tag. testsuite: * gcc.dg/c99-restrict-3.c: New test. From-SVN: r146356
2009-04-19toplev.c (compile_file): Move call to coverage_finish ...Diego Novillo5-7/+23
* toplev.c (compile_file): Move call to coverage_finish ... * cgraphunit.c (ipa_passes): ... here. Call cgraph_process_new_functions. * ipa-utils.c (get_base_var): Handle CONSTRUCTOR. * Makefile.in (cgraphunit.o): Add dependency on COVERAGE_H. From-SVN: r146354
2009-04-19re PR preprocessor/20078 (Gcc doesn't complain about non-benign macro ↵Joseph Myers8-12/+615
definitions) libcpp: PR preprocessor/20078 * include/cpp-id-data.h (struct cpp_macro): Add extra_tokens field. * include/cpplib.h (SP_DIGRAPH, SP_PREV_WHITE): Define. (struct cpp_token): Change flags to unsigned short. * lex.c (_cpp_lex_direct): Initialize arg_no for CPP_PASTE tokens. (_cpp_equiv_tokens): Check arg_no for CPP_PASTE tokens. (cpp_token_val_index): Return CPP_TOKEN_FLD_ARG_NO for CPP_PASTE tokens. * macro.c (macro_real_token_count): New. (enter_macro_context, replace_args): Use macro_real_token_count. (create_iso_definition): Record whitespace surrounding and digraph spelling of # and ## tokens using SP_PREV_WHITE and SP_DIGRAPH. Set extra_tokens and save CPP_PASTE tokens with arg_no set for multiple consecutive ## tokens. (_cpp_create_definition): Initialize extra_tokens. (cpp_macro_definition): Use macro_real_token_count. gcc/testsuite: * gcc.dg/cpp/paste16.c, gcc.dg/cpp/redef4.c: New tests. From-SVN: r146352
2009-04-19cgraph.c (cgraph_create_edge, [...]): Set proper cfun.Jan Hubicka3-0/+15
* cgraph.c (cgraph_create_edge, cgraph_set_call_stmt): Set proper cfun. (dump_cgraph_node): Dump can throw external flag. * ipa-pure-const.c (propagate): Fix propagation of nothrow flags. From-SVN: r146349
2009-04-19stdatomic.h (__atomic_flag_for_address): Use _GLIBCXX_NOTHROW.Jan Hubicka2-1/+6
* include/c_compatibility/stdatomic.h (__atomic_flag_for_address): Use _GLIBCXX_NOTHROW. From-SVN: r146348
2009-04-19trans.c (gigi): Make the special IA-64 descriptor type a builtin type and ↵Eric Botcazou2-18/+24
give it a name. * gcc-interface/trans.c (gigi): Make the special IA-64 descriptor type a builtin type and give it a name. From-SVN: r146347
2009-04-19gnat.exp (local_find_gnatmake): Pass --LINK to gnatlink.Eric Botcazou2-2/+7
* lib/gnat.exp (local_find_gnatmake): Pass --LINK to gnatlink. Do not pass -B$root after -margs. From-SVN: r146345
2009-04-19re PR c/32061 ((Wlogical-op) wording of warning of constant logicials need ↵Manuel López-Ibáñez15-66/+195
improvement) 2009-04-19 Manuel López-Ibáñez <manu@gcc.gnu.org> PR c/32061 PR c++/36954 * doc/invoke.texi: Add -Wlogical-op to -Wextra. * common.opt (Wlogical-op): Move from here... * c.opt (Wlogical-op): ... to here. * c-typeck.c (parser_build_binary_op): Update call to warn_logical_operator. * c-opts.c (c_common_post_options): Enable warn_logical_op with extra_warnings. * c-common.c (warn_logical_op): Update. * c-common.h (warn_logical_op): Update declaration. cp/ * call.c (build_new_op): Save the original codes of operands before folding. testsuite/ * gcc.dg/pr32061.c: New. * gcc.dg/Wlogical-op-1.c: Update. * g++.dg/warn/Wlogical-op-1.C: Update. * g++.dg/warn/pr36954.C: New. From-SVN: r146344
2009-04-192009-04-19 Paolo Carlini <paolo.carlini@oracle.com>Paolo Carlini1-6/+8
Trim last ChangeLog entry. From-SVN: r146343
2009-04-19Fix changelog entry.Jan Hubicka1-9/+9
From-SVN: r146342
2009-04-19stdatomic.h (atomic_flag_test_and_set_explicit, [...]): Use _GLIBCXX_NOTHROW.Jan Hubicka2-1/+8
* c_compatibility/stdatomic.h (atomic_flag_test_and_set_explicit, atomic_flag_clear_explicit, __atomic_flag_wait_explicit): Use _GLIBCXX_NOTHROW. * bits/c++config (_GLIBCXX_NOTHROW): New. From-SVN: r146341
2009-04-19* tree.c (protected_set_expr_location): Fix formatting.Eric Botcazou2-1/+6
From-SVN: r146340
2009-04-19Daily bump.GCC Administrator1-1/+1
From-SVN: r146339
2009-04-19re PR c/27676 (gcc is overly strict in assignment to read-only data)Joseph Myers4-2/+59
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
2009-04-182009-04-18 Paolo Carlini <paolo.carlini@oracle.com>Paolo Carlini1-1/+2
Trim overlong ChangeLog entry. From-SVN: r146334
2009-04-18re PR c/22367 (constraints on '&' not fully implemented)Joseph Myers5-0/+53
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
2009-04-18* eh_type.cc (__cxa_current_exception_type) Mark throw().Jan Hubicka10-28/+48
* 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
2009-04-18pool_allocator.cc (_M_get_free_list, [...]): Mark throw ()Jan Hubicka8-33/+57
* 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
2009-04-18condition_variable.cc (condition_variable, [...]): Mark throw()Jan Hubicka20-98/+141
* 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
2009-04-18directives.c (parse_include): Pass true to check_eol.Joseph Myers4-1/+18
libcpp: * directives.c (parse_include): Pass true to check_eol. gcc/testsuite: * gcc.dg/cpp/include5.c: New test. From-SVN: r146327
2009-04-18cp-tree.h: Remove the prototype for insert_block.Kazu Hirata3-13/+5
* cp-tree.h: Remove the prototype for insert_block. * decl.c (insert_block): Remove. From-SVN: r146326
2009-04-18re PR c/35210 (gcc incorrectly allows calling function returning "const void")Joseph Myers4-3/+43
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
2009-04-18re PR libstdc++/39802 (std::num_get fails to parse negative zero input ↵Paolo Carlini4-8/+174
correctly) 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
2009-04-18cgraph.c (cgraph_make_edge, [...]): Set nothrow flag.Jan Hubicka9-27/+132
* 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
2009-04-18re PR preprocessor/39646 (__FILE__ breaks for empty file name)Joseph Myers6-5/+32
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
2009-04-18formater.h: Include bits/c++config.h.Jan Hubicka6-15/+43
* 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
2009-04-18re PR preprocessor/39647 (Syntax checks in #line not quite right)Joseph Myers4-17/+53
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
2009-04-18re PR tree-optimization/39804 (internal compiler error: in ↵Richard Guenther5-58/+113
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
2009-04-18tree-vrp.c (ssa_name_nonzero_p): Remove.Kazu Hirata3-23/+5
* tree-vrp.c (ssa_name_nonzero_p): Remove. * tree.h: Remove the prototype for ssa_name_nonzero_p. From-SVN: r146313
2009-04-18tree.c (function_args_count): Remove.Kazu Hirata3-21/+5
* tree.c (function_args_count): Remove. * tree.h: Remove the prototype for function_args_count. From-SVN: r146312
2009-04-18tree-iterator.c (expr_only): Remove.Kazu Hirata3-26/+5
* tree-iterator.c (expr_only): Remove. * tree.h: Remove the prototype for expr_only. From-SVN: r146311
2009-04-18reginfo.c (cannot_change_mode_set_regs): Remove.Kazu Hirata3-32/+5
* reginfo.c (cannot_change_mode_set_regs): Remove. * rtl.h: Remove the prototype for cannot_change_mode_set_regs. From-SVN: r146310
2009-04-18avr.md (*rotlsi3_8, [...]): Check whether operands 0 and 1 overlaps.Anatoly Sokolov2-20/+62
* config/avr/avr.md (*rotlsi3_8, *rotlsi3_16, *rotlsi3_24 ): Check whether operands 0 and 1 overlaps. From-SVN: r146309