1. 01 May, 2017 16 commits
  2. 30 Apr, 2017 4 commits
    • * fr.po: Update. · 5bda45cd
      From-SVN: r247420
      Joseph Myers committed
    • * fr.po: Update. · ade61912
      From-SVN: r247418
      Joseph Myers committed
    • re PR tree-optimization/79224 (Large C-Ray slowdown) · 4adaad64
      
      	PR ipa/79224
      	* ipa-inline-analysis.c (dump_predicate): Add optional parameter NL.
      	(account_size_time): Use two predicates - exec_pred and
      	nonconst_pred_ptr.
      	(evaluate_conditions_for_known_args): Compute both clause and
      	nonspec_clause.
      	(evaluate_properties_for_edge): Evaulate both clause and nonspec_clause.
      	(inline_summary_t::duplicate): Update.
      	(estimate_function_body_sizes): Caluculate exec and nonconst predicates
      	separately.
      	(compute_inline_parameters): Likewise.
      	(estimate_edge_size_and_time): Update caluclation of time.
      	(estimate_node_size_and_time): Compute both time and nonspecialized
      	time.
      	(estimate_ipcp_clone_size_and_time): Update.
      	(inline_merge_summary): Update.
      	(do_estimate_edge_time): Update.
      	(do_estimate_edge_size): Update.
      	(do_estimate_edge_hints): Update.
      	(inline_read_section, inline_write_summary): Stream both new predicates.
      	* ipa-inline.c (compute_uninlined_call_time): Take uninlined_call_time
      	as argument.
      	(compute_inlined_call_time): Cleanup.
      	(big_speedup_p): Update.
      	(edge_badness): Update.
      	* ipa-inline.h (INLINE_TIME_SCALE): Remove.
      	(size_time_entry): Replace predicate by exec_predicate and
      	nonconst_predicate.
      	(edge_growth_cache_entry): Cache both time nad nonspecialized time.
      	(estimate_edge_time): Return also nonspec_time.
      	(reset_edge_growth_cache): Update.
      
      From-SVN: r247417
      Jan Hubicka committed
    • Daily bump. · 8cbe7981
      From-SVN: r247416
      GCC Administrator committed
  3. 29 Apr, 2017 8 commits
  4. 28 Apr, 2017 12 commits
    • PR tree-optimization/80523 - -Wformat-overflow doesn't consider -fexec-charset · d127ae9f
      gcc/ChangeLog:
      
      	PR tree-optimization/80523
      	* gimple-ssa-sprintf.c (target_to_host_charmap): New global variable.
      	(init_target_to_host_charmap, target_to_host, target_strtol10): New
      	functions.
      	(maybe_warn, format_directive, parse_directive): Use new functions.
      	(pass_sprintf_length::execute): Call init_target_to_host_charmap.
      
      gcc/testsuite/ChangeLog:
      
      	PR tree-optimization/80523
      	* gcc.dg/tree-ssa/builtin-sprintf-warn-18.c: New test.
      
      From-SVN: r247401
      Martin Sebor committed
    • Replace absolute linenrs in gfortran.dg · c9610933
      2017-04-28  Tom de Vries  <tom@codesourcery.com>
      
      	PR testsuite/80557
      	* gfortran.dg/gomp/appendix-a/a.24.1.f90: Replace absolute linenrs.
      	* gfortran.dg/gomp/appendix-a/a.31.3.f90: Same.
      
      From-SVN: r247400
      Tom de Vries committed
    • Replace absolute linenrs in objc.dg,obj-c++.dg · b5be38bc
      2017-04-28  Tom de Vries  <tom@codesourcery.com>
      
      	PR testsuite/80557
      	* obj-c++.dg/bitfield-1.mm: Replace absolute linenrs.
      	* obj-c++.dg/bitfield-4.mm: Same.
      	* obj-c++.dg/bitfield-5.mm: Same.
      	* obj-c++.dg/exceptions-3.mm: Same.
      	* obj-c++.dg/exceptions-5.mm: Same.
      	* obj-c++.dg/method-1.mm: Same.
      	* obj-c++.dg/method-12.mm: Same.
      	* obj-c++.dg/method-13.mm: Same.
      	* obj-c++.dg/method-15.mm: Same.
      	* obj-c++.dg/method-16.mm: Same.
      	* obj-c++.dg/property/at-property-18.mm: Same.
      	* obj-c++.dg/property/at-property-25.mm: Same.
      	* obj-c++.dg/property/at-property-5.mm: Same.
      	* obj-c++.dg/property/dynamic-2.mm: Same.
      	* obj-c++.dg/property/property-neg-3.mm: Same.
      	* obj-c++.dg/protocol-inheritance-1.mm: Same.
      	* obj-c++.dg/protocol-inheritance-2.mm: Same.
      	* obj-c++.dg/syntax-error-1.mm: Same.
      	* obj-c++.dg/try-catch-13.mm: Same.
      	* objc.dg/bitfield-4.m: Same.
      	* objc.dg/class-1.m: Same.
      	* objc.dg/method-11.m: Same.
      	* objc.dg/method-6.m: Same.
      	* objc.dg/method-7.m: Same.
      	* objc.dg/method-9.m: Same.
      	* objc.dg/missing-proto-3.m: Same.
      	* objc.dg/naming-2.m: Same.
      	* objc.dg/property/at-property-16.m: Same.
      	* objc.dg/property/at-property-18.m: Same.
      	* objc.dg/property/at-property-25.m: Same.
      	* objc.dg/property/at-property-5.m: Same.
      	* objc.dg/property/dynamic-2.m: Same.
      	* objc.dg/property/property-neg-3.m: Same.
      	* objc.dg/protocol-inheritance-1.m: Same.
      	* objc.dg/protocol-inheritance-2.m: Same.
      
      From-SVN: r247399
      Tom de Vries committed
    • Drop Z from X + Z < Y + Z · d35256b6
      2017-04-28  Marc Glisse  <marc.glisse@inria.fr>
      
      gcc/
      	* match.pd (X+Z OP Y+Z, X-Z OP Y-Z, Z-X OP Z-Y): New transformations.
      
      gcc/testsuite/
      	* gcc.dg/tree-ssa/cmpexactdiv-2.c: Update for X-Z OP Y-Z.
      
      From-SVN: r247398
      Marc Glisse committed
    • configure.ac (SYSTEM_HEADER_DIR, [...]): Set correctly. · 0c90d48b
      2017-04-28  Bernd Edlinger  <bernd.edlinger@hotmail.de>
      
              * configure.ac (SYSTEM_HEADER_DIR, BUILD_SYSTEM_HEADER_DIR,
              target_header_dir): Set correctly.
              * configure: Regenerated.
              * Makefile.in (BUILD_SYSTEM_HEADER_DIR): New make variabe.
              (LIMITS_H_TEST, if_multiarch, stmp-fixinc): Use BUILD_SYSTEM_HEADER_DIR
              instead of SYSTEM_HEADER_DIR.
      
      From-SVN: r247397
      Bernd Edlinger committed
    • Remove blank line · 4accc823
      From-SVN: r247395
      Eric Botcazou committed
    • Update .po files. · e53603ef
      	* be.po, da.po, de.po, el.po, es.po, fi.po, fr.po, hr.po, id.po,
      	ja.po, nl.po, ru.po, sr.po, sv.po, tr.po, uk.po, vi.po, zh_CN.po,
      	zh_TW.po: Update.
      
      From-SVN: r247394
      Joseph Myers committed
    • [multiple changes] · 40b4bc2d
      2017-04-28  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch4.adb (Complete_Object_Operation): When rewriting the
      	controlling actual in a prefixed call, preserve the original node
      	information if the prefix itself has been rewritten, for ASIS use.
      
      2017-04-28  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch6.adb (Insert_Post_Call_Actions):
      	Code clean up. Insert the post-call actions after an enclosing
      	procedure call when N denotes a function call and appears as an
      	actual parameter in the procedure call.
      
      2017-04-28  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* freeze.adb (Check_Component_Storage_Order): If there is a clause
      	for the component, also reject the attribute if the component
      	doesn't end on a byte boundary and its scalar storage order is
      	different from that of the enclosing record type.
      
      From-SVN: r247391
      Arnaud Charlet committed
    • [multiple changes] · 66c19cd4
      2017-04-28  Javier Miranda  <miranda@adacore.com>
      
      	* atree.ads (Info_Messages): Removed.
      	(Warning_Info_Messages): New counter.
      	(Report_Info_Messages): New counter.
      	* err_vars.ads Update documentation.
      	* errout.adb (Delete_Warning_And_Continuations): Update
      	Info_Message occurrences.
      	(Error_Msg_Internal): Update Info_Message occurrences.
      	(Delete_Warning): Update Info_Message occurrences.
      	(Write_Error_Summary): Update Info_Message occurrences.
      	(Output_Messages): Update Info_Message occurrences.
      	(To_Be_Removed): Update Info_Message occurrences.
      	(Reset_Warnings): Update Info_Message occurrences.
      	* errutil.adb (Error_Msg): Update Info_Message occurrences.
      	(Finalize): Update Info_Message occurrences.
      	(Initialize): Update Info_Message occurrences.
      	* erroutc.adb (Delete_Msg): Update Info_Message occurrences.
      	(Compilation_Errors): Update Info_Message_Occurences.
      
      2017-04-28  Eric Botcazou  <ebotcazou@adacore.com>
      
              * exp_ch3.adb (Build_Init_Statements): Likewise on Nam.
              * freeze.adb (Check_Component_Storage_Order): And on Comp_Byte_Aligned.
              * sem_aggr.adb (Resolve_Record_Aggregate): Initialize Box_Node.
              * sem_attr.adb (Loop_Entry): Initialize Encl_Loop.
              * sem_ch12.adb (Build_Operator_Wrapper): Add pragma Warnings on Expr.
              * sem_ch13.adb (Validate_Address_Clauses): Initialize Y_Alignment and
              Y_Size.
              * sem_eval.adb (Why_Not_Static): Initialize Typ.
              * sem_prag.adb (Analyze_Pragma): Add pragma Warnings on Str.
      
      From-SVN: r247390
      Arnaud Charlet committed
    • Remove superfluous "" in dg-(error|warning|message|bogus) · 7a95dfa7
      find $(find -type d -name testsuite) -type f \
           | xargs sed -ri 's#(dg-(error|warning|message|bogus).*)" "" \}#\1" }#'
      
      2017-04-28  Tom de Vries  <tom@codesourcery.com>
      
      	* g++.dg/abi/bitfield3.C: Remove superfluous "" in
      	dg-(error|warning|message|bogus).
      	* g++.dg/conversion/dr195-1.C: Same.
      	* g++.dg/conversion/dr195.C: Same.
      	* g++.dg/cpp0x/constexpr-reinterpret1.C: Same.
      	* g++.dg/cpp0x/gen-attrs-14.C: Same.
      	* g++.dg/cpp0x/inline-ns7.C: Same.
      	* g++.dg/cpp0x/variadic105.C: Same.
      	* g++.dg/cpp0x/variadic65.C: Same.
      	* g++.dg/expr/call2.C: Same.
      	* g++.dg/expr/member-of-incomplete-type-1.C: Same.
      	* g++.dg/expr/pmf-1.C: Same.
      	* g++.dg/ext/altivec-types-1.C: Same.
      	* g++.dg/ext/altivec-types-2.C: Same.
      	* g++.dg/ext/altivec-types-3.C: Same.
      	* g++.dg/ext/attrib14.C: Same.
      	* g++.dg/ext/complit1.C: Same.
      	* g++.dg/ext/forscope2.C: Same.
      	* g++.dg/ext/gnu-inline-global-reject.C: Same.
      	* g++.dg/ext/label13.C: Same.
      	* g++.dg/ext/member-attr.C: Same.
      	* g++.dg/ext/visibility/anon7.C: Same.
      	* g++.dg/ext/visibility/visibility-7.C: Same.
      	* g++.dg/ext/vla2.C: Same.
      	* g++.dg/inherit/access2.C: Same.
      	* g++.dg/inherit/covariant12.C: Same.
      	* g++.dg/inherit/covariant14.C: Same.
      	* g++.dg/inherit/namespace-as-base.C: Same.
      	* g++.dg/inherit/template-as-base.C: Same.
      	* g++.dg/lookup/ambig1.C: Same.
      	* g++.dg/lookup/ambig2.C: Same.
      	* g++.dg/lookup/ambig3.C: Same.
      	* g++.dg/lookup/class-member-1.C: Same.
      	* g++.dg/lookup/conv-1.C: Same.
      	* g++.dg/lookup/decl1.C: Same.
      	* g++.dg/lookup/koenig1.C: Same.
      	* g++.dg/lookup/scoped1.C: Same.
      	* g++.dg/lookup/scoped2.C: Same.
      	* g++.dg/lookup/two-stage4.C: Same.
      	* g++.dg/lookup/used-before-declaration.C: Same.
      	* g++.dg/lookup/using.C: Same.
      	* g++.dg/lookup/using17.C: Same.
      	* g++.dg/lookup/using2.C: Same.
      	* g++.dg/other/abstract2.C: Same.
      	* g++.dg/other/classkey1.C: Same.
      	* g++.dg/other/component1.C: Same.
      	* g++.dg/other/const1.C: Same.
      	* g++.dg/other/const2.C: Same.
      	* g++.dg/other/conversion1.C: Same.
      	* g++.dg/other/do1.C: Same.
      	* g++.dg/other/error1.C: Same.
      	* g++.dg/other/error10.C: Same.
      	* g++.dg/other/error3.C: Same.
      	* g++.dg/other/error4.C: Same.
      	* g++.dg/other/error5.C: Same.
      	* g++.dg/other/error8.C: Same.
      	* g++.dg/other/error9.C: Same.
      	* g++.dg/other/field1.C: Same.
      	* g++.dg/other/init1.C: Same.
      	* g++.dg/other/ptrmem2.C: Same.
      	* g++.dg/other/return1.C: Same.
      	* g++.dg/overload/builtin3.C: Same.
      	* g++.dg/overload/error1.C: Same.
      	* g++.dg/overload/error2.C: Same.
      	* g++.dg/overload/koenig2.C: Same.
      	* g++.dg/overload/pmf1.C: Same.
      	* g++.dg/parse/args1.C: Same.
      	* g++.dg/parse/attr3.C: Same.
      	* g++.dg/parse/constant4.C: Same.
      	* g++.dg/parse/crash10.C: Same.
      	* g++.dg/parse/crash18.C: Same.
      	* g++.dg/parse/crash19.C: Same.
      	* g++.dg/parse/crash20.C: Same.
      	* g++.dg/parse/crash21.C: Same.
      	* g++.dg/parse/crash22.C: Same.
      	* g++.dg/parse/crash32.C: Same.
      	* g++.dg/parse/decl-specifier-1.C: Same.
      	* g++.dg/parse/error58.C: Same.
      	* g++.dg/parse/local-class1.C: Same.
      	* g++.dg/parse/non-dependent2.C: Same.
      	* g++.dg/parse/parameter-declaration-1.C: Same.
      	* g++.dg/parse/ptrmem2.C: Same.
      	* g++.dg/parse/ptrmem3.C: Same.
      	* g++.dg/parse/saved1.C: Same.
      	* g++.dg/tc1/dr101.C: Same.
      	* g++.dg/tc1/dr142.C: Same.
      	* g++.dg/tc1/dr176.C: Same.
      	* g++.dg/template/conv4.C: Same.
      	* g++.dg/template/crash56.C: Same.
      	* g++.dg/template/dependent-expr2.C: Same.
      	* g++.dg/template/error1.C: Same.
      	* g++.dg/template/error2.C: Same.
      	* g++.dg/template/explicit6.C: Same.
      	* g++.dg/template/init-list.C: Same.
      	* g++.dg/template/local1.C: Same.
      	* g++.dg/template/lookup2.C: Same.
      	* g++.dg/template/meminit2.C: Same.
      	* g++.dg/template/nontype25.C: Same.
      	* g++.dg/template/ptrmem2.C: Same.
      	* g++.dg/template/qualttp19.C: Same.
      	* g++.dg/template/qualttp20.C: Same.
      	* g++.dg/template/ttp3.C: Same.
      	* g++.dg/template/unify4.C: Same.
      	* g++.dg/template/unify6.C: Same.
      	* g++.dg/template/unify7.C: Same.
      	* g++.dg/template/warn1.C: Same.
      	* g++.dg/tree-ssa/dom-invalid.C: Same.
      	* g++.dg/ubsan/shift-1.C: Same.
      	* g++.dg/warn/Wunused-2.C: Same.
      	* g++.dg/warn/Wunused-4.C: Same.
      	* g++.dg/warn/Wunused-6.C: Same.
      	* g++.dg/warn/deprecated-6.C: Same.
      	* g++.dg/warn/deprecated.C: Same.
      	* g++.dg/warn/effc1.C: Same.
      	* g++.dg/warn/effc3.C: Same.
      	* g++.dg/warn/incomplete1.C: Same.
      	* g++.dg/warn/inline1.C: Same.
      	* g++.dg/warn/noeffect2.C: Same.
      	* g++.dg/warn/noeffect4.C: Same.
      	* g++.dg/warn/oldcast1.C: Same.
      	* g++.dg/warn/sentinel.C: Same.
      	* g++.dg/warn/unit-1.C: Same.
      	* g++.old-deja/g++.pt/inherit2.C: Same.
      	* g++.old-deja/g++.pt/overload8.C: Same.
      	* gcc.dg/20000926-1.c: Same.
      	* gcc.dg/20040223-1.c: Same.
      	* gcc.dg/Warray-bounds-7.c: Same.
      	* gcc.dg/alias-1.c: Same.
      	* gcc.dg/alias-12.c: Same.
      	* gcc.dg/alias-13.c: Same.
      	* gcc.dg/alias-2.c: Same.
      	* gcc.dg/array-13.c: Same.
      	* gcc.dg/array-4.c: Same.
      	* gcc.dg/attr-ifunc-2.c: Same.
      	* gcc.dg/attr-invalid.c: Same.
      	* gcc.dg/attr-noinline.c: Same.
      	* gcc.dg/bitfld-2.c: Same.
      	* gcc.dg/c90-const-expr-7.c: Same.
      	* gcc.dg/c99-const-expr-7.c: Same.
      	* gcc.dg/cpp/20000625-1.c: Same.
      	* gcc.dg/cpp/charconst-4.c: Same.
      	* gcc.dg/cpp/include2.c: Same.
      	* gcc.dg/cpp/include2a.c: Same.
      	* gcc.dg/decl-4.c: Same.
      	* gcc.dg/deprecated-4.c: Same.
      	* gcc.dg/deprecated.c: Same.
      	* gcc.dg/dfp/altivec-types.c: Same.
      	* gcc.dg/float-range-1.c: Same.
      	* gcc.dg/pack-test-3.c: Same.
      	* gcc.dg/pr11492.c: Same.
      	* gcc.dg/pr15360-1.c: Same.
      	* gcc.dg/pr37908.c: Same.
      	* gcc.dg/pr53265.c: Same.
      	* gcc.dg/pr57287-2.c: Same.
      	* gcc.dg/pr57287.c: Same.
      	* gcc.dg/redecl-1.c: Same.
      	* gcc.dg/sync-3.c: Same.
      	* gcc.dg/two-types-1.c: Same.
      	* gcc.dg/two-types-2.c: Same.
      	* gcc.dg/two-types-4.c: Same.
      	* gcc.dg/two-types-5.c: Same.
      	* gcc.dg/two-types-6.c: Same.
      	* gcc.dg/two-types-7.c: Same.
      	* gcc.dg/two-types-8.c: Same.
      	* gcc.dg/two-types-9.c: Same.
      	* gcc.dg/uninit-I.c: Same.
      	* gcc.dg/uninit-pr19430.c: Same.
      	* gcc.dg/visibility-7.c: Same.
      	* gcc.dg/winline-10.c: Same.
      	* gcc.dg/winline-2.c: Same.
      	* gcc.dg/winline-3.c: Same.
      	* gcc.dg/winline-9.c: Same.
      	* gcc.target/i386/attr-returns_twice-1.c: Same.
      	* gcc.target/i386/chkp-const-check-2.c: Same.
      	* gcc.target/i386/chkp-label-address.c: Same.
      	* gcc.target/i386/chkp-remove-bndint-2.c: Same.
      	* gcc.target/i386/pr39162.c: Same.
      	* gcc.target/i386/sse-5.c: Same.
      	* gcc.target/powerpc/altivec-types-1.c: Same.
      	* gcc.target/powerpc/altivec-types-2.c: Same.
      	* gcc.target/powerpc/altivec-types-3.c: Same.
      	* gcc.target/powerpc/float128-mix.c: Same.
      	* gcc.target/powerpc/no-r11-3.c: Same.
      	* gcc.target/spu/Wmain.c: Same.
      	* gcc.target/spu/ea/errors2.c: Same.
      	* gfortran.dg/assignment_1.f90: Same.
      	* gfortran.dg/common_3.f90: Same.
      	* gfortran.dg/der_io_1.f90: Same.
      	* gfortran.dg/g77/20030326-1.f: Same.
      	* gfortran.dg/g77/9263.f: Same.
      	* gfortran.dg/g77/960317-1.f: Same.
      	* gfortran.dg/g77/970625-2.f: Same.
      	* gfortran.dg/g77/980615-0.f: Same.
      	* gfortran.dg/g77/check0.f: Same.
      	* gfortran.dg/g77/dnrm2.f: Same.
      	* gfortran.dg/g77/pr9258.f: Same.
      	* gfortran.dg/ichar_1.f90: Same.
      	* gfortran.dg/interface_1.f90: Same.
      	* gfortran.dg/namelist_1.f90: Same.
      	* gfortran.dg/namelist_2.f90: Same.
      	* gfortran.dg/namelist_3.f90: Same.
      	* gfortran.dg/namelist_print_2.f: Same.
      	* gfortran.dg/oldstyle_1.f90: Same.
      	* gfortran.dg/runtime_warning_1.f90: Same.
      	* gfortran.dg/underflow.f90: Same.
      	* gnat.dg/specs/integer_value.ads: Same.
      	* obj-c++.dg/fsf-package-0.m: Same.
      	* objc.dg/two-types-1.m: Same.
      
      From-SVN: r247389
      Tom de Vries committed
    • Minor reformatting. · b6dc26ba
      From-SVN: r247388
      Arnaud Charlet committed
    • [multiple changes] · 85be939e
      2017-04-28  Bob Duff  <duff@adacore.com>
      
      	* sem_util.ads, sem_util.adb (Might_Raise): New function
      	that replaces Is_Exception_Safe, but has the opposite
      	sense. Is_Exception_Safe was missing various cases -- calls inside
      	a pragma Debug, calls inside an 'if' or assignment statement,
      	etc. Might_Raise now walks the entire subtree looking for things
      	that can raise.
      	* exp_ch9.adb (Is_Exception_Safe): Remove.
      	(Build_Protected_Subprogram_Body): Replace call to
      	Is_Exception_Safe with "not Might_Raise". Misc cleanup (use
      	constants where possible).
      	* exp_ch7.adb: Rename Is_Protected_Body -->
      	Is_Protected_Subp_Body. A protected_body is something different
      	in the grammar.
      
      2017-04-28  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* inline.adb (Expand_Inlined_Call): Initialize Targ1 variable.
      	* par-ch3.adb (P_Component_Items): Initialize Decl_Node variable.
      	(P_Discrete_Choice_List): Initialize Expr_Node variable.
      	* par-ch9.adb (P_Task): Initialize Aspect_Sloc variable.
      	(P_Protected): Likewise.
      	* sem_case.adb (Check_Duplicates):
      	Add pragma Warnings on variable.
      	* sem_ch12.adb (Preanalyze_Actuals): Initialize Vis variable.
      	* sem_ch4.adb (List_Operand_Interps):  Add pragma Warnings on variable.
      	* sem_ch5.adb (Analyze_Assignment): Initialize Save_Full_Analysis.
      	(Analyze_Exit_Statement): Initialize Scope_Id variable.
      	(Analyze_Iterator_Specification): Initialize Bas variable.
      	* sem_ch9.adb (Allows_Lock_Free_Implementation): Initialize
      	Error_Count (Satisfies_Lock_Free_Requirements): Likewise.
      	(Analyze_Accept_Statement): Initialize Task_Nam.
      
      2017-04-28  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* checks.adb (Install_Primitive_Elaboration_Check):
      	Do not generate an elaboration check if all checks have been
      	suppressed.
      
      2017-04-28  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch13.adb (Analyze_Aspect_Specifications, case
      	Interrupt_Handler and Attach_Handler): Generate reference
      	to protected operation to prevent spurious warnings about
      	unreferenced entities. Previous scheme failed with style checks
      	enabled.
      
      2017-04-28  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_prag.adb (Relocate_Pragmas_To_Body): A pragma Warnings
      	that follows an expression function must not be relocated to
      	the generated body, because it applies to the code that follows.
      
      From-SVN: r247387
      Arnaud Charlet committed