1. 08 Jul, 2016 19 commits
  2. 07 Jul, 2016 21 commits
    • re PR c++/70869 (internal compiler error: Segmentation fault on array of pointer… · 842dc2e6
      re PR c++/70869 (internal compiler error: Segmentation fault on array of pointer to function members)
      
      	PR c++/70869
      	PR c++/71054
      	* cp-gimplify.c (cp_genericize_r): For DECL_EXPR for non-static
      	artificial vars, genericize their initializers.
      
      	* g++.dg/cpp0x/pr70869.C: New test.
      	* g++.dg/cpp0x/pr71054.C: New test.
      
      Co-Authored-By: Kai Tietz <ktietz70@googlemail.com>
      
      From-SVN: r238124
      Jakub Jelinek committed
    • * g++.dg/debug/pr71432.C: Fail on AIX. · 31be4262
      From-SVN: r238122
      David Edelsohn committed
    • Update libstdc++ status docs · 9fc0faf0
      	* doc/xml/manual/status_cxx2014.xml: Update LFTS status table.
      	* doc/html/*: Regenerate.
      
      From-SVN: r238120
      Jonathan Wakely committed
    • [multiple changes] · 86ec3bfb
      2016-07-07  Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_ch6.adb (Expand_Internal_Init_Call): Subsidiary procedure
      	to Expand_Protected_ Subprogram_Call, to handle properly a
      	call to a protected function that provides the initialization
      	expression for a private component of the same protected type.
      	* sem_ch9.adb (Analyze_Protected_Definition): Layout must be
      	applied to itypes generated for a private operation of a protected
      	type that has a formal of an anonymous access to subprogram,
      	because these itypes have no freeze nodes and are frozen in place.
      	* sem_ch4.adb (Analyze_Selected_Component): If prefix is a
      	protected type and it is not a current instance, do not examine
      	the first private component of the type.
      
      2016-07-07  Arnaud Charlet  <charlet@adacore.com>
      
      	* exp_imgv.adb, g-dynhta.adb, s-regexp.adb, s-fatgen.adb, s-poosiz.adb:
      	Minor removal of extra whitespace.
      	* einfo.ads: minor removal of repeated "as" in comment
      
      2016-07-07  Vadim Godunko  <godunko@adacore.com>
      
      	* adaint.c: Complete previous change.
      
      From-SVN: r238117
      Arnaud Charlet committed
    • [multiple changes] · 0640c7d1
      2016-07-07  Vadim Godunko  <godunko@adacore.com>
      
      	* adainit.h, adainit.c (__gnat_is_read_accessible_file): New
      	subprogram.
      	(__gnat_is_write_accessible_file): New subprogram.
      	* s-os_lib.ads, s-os_lib.adb (Is_Read_Accessible_File): New subprogram.
      	(Is_Write_Accessible_File): New subprogram.
      
      2016-07-07  Justin Squirek  <squirek@adacore.com>
      
      	* sem_ch12.adb (Install_Body): Minor refactoring in the order
      	of local functions.
      	(In_Same_Scope): Change loop condition to be more expressive.
      
      From-SVN: r238116
      Arnaud Charlet committed
    • [multiple changes] · 8c519039
      2016-07-07  Gary Dismukes  <dismukes@adacore.com>
      
      	* sem_ch3.adb, sem_prag.adb, sem_prag.ads, prj-ext.adb, freeze.adb,
      	sem_attr.adb: Minor reformatting, fix typos.
      
      2016-07-07  Justin Squirek  <squirek@adacore.com>
      
      	* sem_ch12.adb (In_Same_Scope): Created this function to check
      	a generic package definition against an instantiation for scope
      	dependancies.
      	(Install_Body): Add function In_Same_Scope and
      	amend conditional in charge of delaying the package instance.
      	(Is_In_Main_Unit): Add guard to check if parent is present in
      	assignment of Current_Unit.
      
      From-SVN: r238115
      Arnaud Charlet committed
    • Optimize fortran loops with +-1 step. · 1c122092
      	* gfortran.dg/do_1.f90: Remove a corner case that triggers
      	an undefined behavior.
      	* gfortran.dg/do_3.F90: Likewise.
      	* gfortran.dg/do_check_11.f90: New test.
      	* gfortran.dg/do_check_12.f90: New test.
      	* gfortran.dg/do_corner_warn.f90: New test.
      	* lang.opt (Wundefined-do-loop): New option.
              * resolve.c (gfc_resolve_iterator): Warn for Wundefined-do-loop.
      	(gfc_trans_simple_do): Generate a c-style loop.
      	(gfc_trans_do): Fix GNU coding style.
      	* invoke.texi: Mention the new warning.
      
      From-SVN: r238114
      Martin Liska committed
    • sem_ch6.adb (Analyze_Subprogram_Body_Helper): Remove redundant test, adjust… · 9cc6b3f8
      sem_ch6.adb (Analyze_Subprogram_Body_Helper): Remove redundant test, adjust comments and formatting.
      
      2016-07-07  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Remove redundant test,
      	adjust comments and formatting.
      	* sem_prag.adb (Inlining_Not_Possible): Do not test Front_End_Inlining
      	here but...
      	(Make_Inline): ...here before calling Inlining_Not_Possible instead.
      	(Set_Inline_Flags): Remove useless test.
      	(Analyze_Pragma) <Pragma_Inline>: Add comment about -gnatn switch.
      
      From-SVN: r238113
      Eric Botcazou committed
    • Add PRED_FORTRAN_LOOP_PREHEADER to DO loops with step · 7119f1b1
      	* trans-stmt.c (gfc_trans_do): Add expect builtin for DO
      	loops with step bigger than +-1.
      	* gfortran.dg/predict-1.f90: Ammend the test.
      	* gfortran.dg/predict-2.f90: Likewise.
      
      From-SVN: r238112
      Martin Liska committed
    • [multiple changes] · 0e77949e
      2016-07-07  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_prag.ads, sem_prag.adb (Build_Classwide_Expression): Include
      	overridden operation as parameter, in order to map formals of
      	the overridden and overring operation properly prior to rewriting
      	the inherited condition.
      	* freeze.adb (Check_Inherited_Cnonditions): Change call to
      	Build_Class_Wide_Expression accordingly.  In Spark_Mode, add
      	call to analyze the contract of the parent operation, prior to
      	mapping formals between operations.
      
      2016-07-07  Arnaud Charlet  <charlet@adacore.com>
      
      	* adabkend.adb (Scan_Back_End_Switches): Ignore -o/-G switches
      	as done in back_end.adb.
      	(Scan_Compiler_Args): Remove special case for CodePeer/SPARK, no longer
      	needed, and prevents proper handling of multi-unit sources.
      
      2016-07-07  Thomas Quinot  <quinot@adacore.com>
      
      	* g-sechas.adb, g-sechas.ads (GNAT.Secure_Hashes.H): Add Hash_Stream
      	type with Write primitive calling Update on the underlying context
      	(and dummy Read primitive raising P_E).
      
      2016-07-07  Thomas Quinot  <quinot@adacore.com>
      
      	* sem_ch13.adb: Minor reformatting.
      
      From-SVN: r238111
      Arnaud Charlet committed
    • [multiple changes] · 7dccd194
      2016-07-07  Thomas Quinot  <quinot@adacore.com>
      
      	* g-socket.ads: Document performance consideration for stream
      	wrapper.
      
      2016-07-07  Arnaud Charlet  <charlet@adacore.com>
      
      	* osint-c.ads (Set_File_Name): Clarify spec.
      
      From-SVN: r238110
      Arnaud Charlet committed
    • freeze.adb: Reenable code. · c7658039
      2016-07-07  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* freeze.adb: Reenable code.
      
      From-SVN: r238109
      Eric Botcazou committed
    • minor reformatting. · d1ce5f8c
      From-SVN: r238107
      Arnaud Charlet committed
    • sem_ch6.adb (Process_Formals): Set ghost flag on formal entities of ghost subprograms. · 0bb97bdf
      2016-07-07  Yannick Moy  <moy@adacore.com>
      
      	* sem_ch6.adb (Process_Formals): Set ghost flag
      	on formal entities of ghost subprograms.
      	* ghost.adb (Check_Ghost_Context.Is_OK_Ghost_Context): Accept ghost
      	entities in use type clauses.
      
      From-SVN: r238106
      Yannick Moy committed
    • Prevent LTO wrappers to process a recursive execution · f965d3da
      	* file-find.c (remove_prefix): New function.
      	* file-find.h (remove_prefix): Declare the function.
      	* gcc-ar.c (main): Skip a folder of the wrapper if
      	a wrapped binary would point to the same file.
      
      From-SVN: r238089
      Martin Liska committed
    • tree-scalar-evolution.c (iv_can_overflow_p): export. · 019d6598
      
      	* tree-scalar-evolution.c (iv_can_overflow_p): export.
      	* tree-scalar-evolution.h (iv_can_overflow_p): Declare.
      	* tree-ssa-loop-ivopts.c (alloc_iv): Use it.
      
      From-SVN: r238088
      Jan Hubicka committed
    • re PR ipa/71624 ([CHKP] internal compiler error: in duplicate_thunk_for_node) · 275792f2
      gcc/
      
      	PR ipa/71624
      	* ipa-inline-analysis.c (compute_inline_parameters): Set
      	local.can_change_signature to false for intrumentation
      	thunk callees.
      
      gcc/testsuite/
      
      	PR ipa/71624
      	* g++.dg/pr71624.C: New test.
      
      From-SVN: r238086
      Ilya Enkovich committed
    • arm.h (TARGET_USE_MOVT): Check MOVT/MOVW availability with TARGET_HAVE_MOVT. · 33427b46
      2016-07-07  Thomas Preud'homme  <thomas.preudhomme@arm.com>
      
          gcc/
          * config/arm/arm.h (TARGET_USE_MOVT): Check MOVT/MOVW availability
          with TARGET_HAVE_MOVT.
          (TARGET_HAVE_MOVT): Define.
          * config/arm/arm.c (const_ok_for_op): Check MOVT/MOVW
          availability with TARGET_HAVE_MOVT.
          * config/arm/arm.md (arm_movt): Use TARGET_HAVE_MOVT to check MOVT
          availability.
          (addsi splitter): Use TARGET_THUMB && TARGET_HAVE_MOVT rather than
          TARGET_THUMB2.
          (symbol_refs movsi splitter): Remove TARGET_32BIT check.
          (arm_movtas_ze): Use TARGET_HAVE_MOVT to check MOVT availability.
          * config/arm/constraints.md (define_constraint "j"): Use
          TARGET_HAVE_MOVT to check MOVT availability.
      
      From-SVN: r238083
      Thomas Preud'homme committed
    • arm-protos.h: Reindent FL_FOR_* macro definitions. · 3129a320
      2016-07-07  Thomas Preud'homme  <thomas.preudhomme@arm.com>
      
          gcc/
          * config/arm/arm-protos.h: Reindent FL_FOR_* macro definitions.
      
      From-SVN: r238082
      Thomas Preud'homme committed
    • arm-arches.def (armv8-m.base): Define new architecture. · 05a437c1
      2016-07-07  Thomas Preud'homme  <thomas.preudhomme@arm.com>
      
          gcc/
          * config/arm/arm-arches.def (armv8-m.base): Define new architecture.
          (armv8-m.main): Likewise.
          (armv8-m.main+dsp): Likewise.
          * config/arm/arm-protos.h (FL_FOR_ARCH8M_BASE): Define.
          (FL_FOR_ARCH8M_MAIN): Likewise.
          * config/arm/arm-tables.opt: Regenerate.
          * config/arm/bpabi.h: Add armv8-m.base, armv8-m.main and
          armv8-m.main+dsp to BE8_LINK_SPEC.
          * config/arm/arm.h (TARGET_HAVE_LDACQ): Exclude ARMv8-M.
          (enum base_architecture): Add BASE_ARCH_8M_BASE and BASE_ARCH_8M_MAIN.
          * config/arm/arm.c (arm_arch_name): Increase size to work with ARMv8-M
          Baseline and Mainline.
          (arm_option_override_internal): Also disable arm_restrict_it when
          !arm_arch_notm.  Update comment for -munaligned-access to also cover
          ARMv8-M Baseline.
          (arm_file_start): Increase buffer size for printing architecture name.
          * doc/invoke.texi: Document architectures armv8-m.base, armv8-m.main
          and armv8-m.main+dsp.
          (mno-unaligned-access): Clarify that this is disabled by default for
          ARMv8-M Baseline architectures as well.
      
          gcc/testsuite/
          * lib/target-supports.exp: Generate add_options_for_arm_arch_FUNC and
          check_effective_target_arm_arch_FUNC_multilib for ARMv8-M Baseline and
          ARMv8-M Mainline architectures.
      
          libgcc/
          * config/arm/lib1funcs.S (__ARM_ARCH__): Define to 8 for ARMv8-M.
      
      From-SVN: r238081
      Thomas Preud'homme committed
    • lib1funcs.S (HAVE_ARM_CLZ): Define for ARMv6* or later and ARMv5t* rather than… · 3d16d9ec
      lib1funcs.S (HAVE_ARM_CLZ): Define for ARMv6* or later and ARMv5t* rather than for a fixed list of...
      
      2016-07-07  Thomas Preud'homme  <thomas.preudhomme@arm.com>
      
          libgcc/
          * config/arm/lib1funcs.S (HAVE_ARM_CLZ): Define for ARMv6* or later
          and ARMv5t* rather than for a fixed list of architectures.
      
      From-SVN: r238080
      Thomas Preud'homme committed