1 2018-04-04 Olivier Hainque <hainque@adacore.com>
3 * libgnat/s-objrea.ads (Get_Memory_Bounds): Rename as Get_Xcode_Bounds.
4 (Object_Section): Rename Flag_Alloc component as Flag_Xcode.
5 * libgnat/s-objrea.adb (Get_Xcode_Bounds): Adjust to new subprogram and
7 (Get_Section, ELF case): Set Flag_Xcode from SHF_EXECINSTR.
8 * libgnat/s-dwalin.adb (Open): Adjust to the Get_Memory_Bounds name
11 2018-04-04 Olivier Hainque <hainque@adacore.com>
13 * libgnat/s-dwalin.ads (Dwarf_Context): Change type of Load_Address to
14 Address, and type of Low, High to Storage_Offset.
15 (Low): Rename as Low_Address and convey that the return value is a
16 runtime reference accounting for a load address.
17 * libgnat/s-dwalin.adb (Read_Aranges_Entry): Adjust to the
18 address/offset type changes.
19 (Aranges_Lookup): Likewise.
20 (Symbolic_Address): Likewise.
21 (Symbolic_Traceback): Likewise.
22 (Dump_Cache): Likewise.
23 (Is_Inside): Likewise.
25 (Set_Load_Address): Likewise.
26 (Low_Address): Likewise, and account for C.Load_Address.
27 * libgnat/s-trasym__dwarf.adb (Lt): Use Low_Address instead of Low.
28 (Multi_Module_Symbolic_Traceback): Compare address in traceback
29 with module Low_Address instead of Low.
31 2018-04-04 Olivier Hainque <hainque@adacore.com>
33 * libgnat/s-dwalin.ads (Dwarf_Context): Rename Load_Slide as
35 * libgnat/s-dwalin.adb (Is_Inside): Adjust accordingly.
36 (Set_Load_Address): Likewise.
37 (Symbolic_Traceback): Likewise.
39 2018-04-04 Olivier Hainque <hainque@adacore.com>
41 * libgnat/s-trasym__dwarf.adb (Add_Module_To_Cache): Expect a
42 Load_Address argument and pass it down to Init_Module.
43 * libgnat/s-tsmona__linux.adb (Build_Cache_For_All_Modules): Pass
44 lm.l_addr as the Load_Address to Add_Module_To_Cache.
46 2018-04-04 Piotr Trojanek <trojanek@adacore.com>
48 * einfo.adb (Has_Discriminants): Stronger assertion.
49 (Set_Has_Discriminants): Stronger assertion.
50 * sem_ch13.adb (Push_Scope_And_Install_Discriminants): Adapt to respect
51 the stronger assertion on Has_Discriminant.
52 (Uninstall_Discriminants_And_Pop_Scope): Same as above.
53 * sem_util.adb (New_Copy_Tree): Same as above.
54 * sem_ch7.adb (Generate_Parent_References): Prevent calls to
55 Has_Discriminant on non-type entities that might happen when the
56 compiled code has errors.
57 * sem_ch3.adb (Derived_Type_Declaration): Only call
58 Set_Has_Discriminant on type entities.
60 2018-04-04 Arnaud Charlet <charlet@adacore.com>
62 * exp_unst.adb (Unnest_Subprogram): Unnest all subprograms relevant for
65 2018-04-04 Piotr Trojanek <trojanek@adacore.com>
67 * lib.ads: Fix typo in enumeration in comment.
69 2018-04-04 Ed Schonberg <schonberg@adacore.com>
71 * sem_attr.adb (Analyze_Attribute, case Scalar_Storage_Order): The
72 attribute reference is legal within a generic unit when the prefix is a
75 2018-04-04 Hristian Kirtchev <kirtchev@adacore.com>
77 * exp_ch7.adb (Establish_Transient_Scope): Code cleanup. Do not
78 delegate the secondary stack management when there is no suitable
79 transient context, and the transient scope was intended to manage the
80 secondary stack because this causes premature reclamation. Change the
81 transient scope creation logic by special casing assignment statements
82 of controlled components for type initialization procedures.
83 (Find_Node_To_Be_Wrapped): Renamed to Find_Transient_Context. Update
85 (Find_Transient_Context): Change the initinte loop into a while loop.
86 Iterations schemes and iterator specifications are not valid transient
87 contexts because they rely on special processing. Assignment statements
88 are now treated as a normal transient context, special cases are
89 handled by the caller. Add special processing for pragma Check.
90 (Is_OK_Construct): Removed. Its functionality has been merged in
91 routine Find_Transient_Context.
92 * sem_ch5.adb (Check_Call): Reimplemented. Add code to properly
93 retrieve the subprogram being invoked. Use a more accurate predicate
94 (Requires_Transient_Scope) to determine that the function will emply
97 2018-04-04 Piotr Trojanek <trojanek@adacore.com>
99 * ada_get_targ.adb: Fix subprogram body headers.
100 * adabkend.adb: Likewise.
101 * checks.adb: Likewise.
102 * exp_ch3.adb: Likewise.
103 * exp_ch5.adb: Likewise.
104 * exp_ch9.adb: Likewise.
105 * exp_dist.adb: Likewise.
106 * exp_tss.adb: Likewise.
107 * inline.adb: Likewise.
108 * lib-writ.adb: Likewise.
109 * lib-xref-spark_specific.adb: Likewise.
110 * libgnarl/s-osinte__darwin.adb: Likewise.
111 * libgnarl/s-stusta.adb: Likewise.
112 * libgnarl/s-taprop__solaris.adb: Likewise.
113 * libgnarl/s-tposen.adb: Likewise.
114 * libgnarl/s-vxwext__kernel-smp.adb: Likewise.
115 * libgnarl/s-vxwext__kernel.adb: Likewise.
116 * libgnat/a-btgbso.adb: Likewise.
117 * libgnat/a-cfdlli.adb: Likewise.
118 * libgnat/a-cfhama.adb: Likewise.
119 * libgnat/a-cfinve.adb: Likewise.
120 * libgnat/a-cimutr.adb: Likewise.
121 * libgnat/a-coboho.adb: Likewise.
122 * libgnat/a-cofove.adb: Likewise.
123 * libgnat/a-cofuve.adb: Likewise.
124 * libgnat/a-comutr.adb: Likewise.
125 * libgnat/a-exexda.adb: Likewise.
126 * libgnat/a-tags.adb: Likewise.
127 * libgnat/a-tideau.adb: Likewise.
128 * libgnat/a-wtdeau.adb: Likewise.
129 * libgnat/a-ztdeau.adb: Likewise.
130 * libgnat/g-alleve.adb: Likewise.
131 * libgnat/s-excdeb.adb: Likewise.
132 * libgnat/s-parint.adb: Likewise.
133 * libgnat/s-shasto.adb: Likewise.
134 * libgnat/s-traceb__hpux.adb: Likewise.
135 * prepcomp.adb: Likewise.
136 * sem_ch4.adb: Likewise.
137 * sem_ch6.adb: Likewise.
138 * sem_dist.adb: Likewise.
139 * sem_prag.adb: Likewise.
140 * sem_util.adb: Likewise.
141 * sinfo.adb: Likewise.
142 * switch.adb: Likewise.
144 2018-05-04 John Marino <gnugcc@marino.st>
147 * link.c (BSD platforms): Add missing backslash.
149 2018-04-27 Eric Botcazou <ebotcazou@adacore.com>
152 * init.c (__gnat_handle_vms_condition): Add missing parentheses.
154 2018-04-25 Eric Botcazou <ebotcazou@adacore.com>
157 * gnat_ugn.texi: Regenerate.
159 2018-03-23 Eric Botcazou <ebotcazou@adacore.com>
162 * gnatlink.adb (Gnatlink): Remove handling of -b switch.
163 * doc/gnat_ugn/building_executable_programs_with_gnat.rst (gnatlink):
164 Remove documentation of -b switch.
166 2018-03-23 Eric Botcazou <ebotcazou@adacore.com>
169 * gnatlink.adb (Process_Args): Drop existing link switches if multiple
170 switches are passed for --LINK.
172 2018-03-12 Eric Botcazou <ebotcazou@adacore.com>
175 * gcc-interface/misc.c (gnat_post_options): Disable string overflow
178 2018-03-10 Eric Botcazou <ebotcazou@adacore.com>
180 * gcc-interface/trans.c (node_has_volatile_full_access) <N_Identifier>:
181 Consider only entities for objects.
183 2018-03-07 Sebastian Huber <sebastian.huber@embedded-brains.de>
185 * gcc-interface/Makefile.in (OSCONS_CPP): Remove redundant
187 (OSCONS_EXTRACT): Add $(GNATLIBCFLAGS_FOR_C).
189 2018-03-06 Eric Botcazou <ebotcazou@adacore.com>
191 * gcc-interface/trans.c (convert_with_check): Fix typo in the condition
192 guarding the overflow check emitted for the upper bound of a floating-
195 2018-03-06 Eric Botcazou <ebotcazou@adacore.com>
197 * gcc-interface/utils.c (def_builtin_1): Bail out on error_mark_node.
199 2018-02-28 Eric Botcazou <ebotcazou@adacore.com>
201 * libgnat/i-cexten.ads (Float_128): New type.
203 2018-02-02 Eric Botcazou <ebotcazou@adacore.com>
205 * gcc-interface/decl.c (array_type_has_nonaliased_component): Return
206 false if the component type is a pointer.
208 2018-01-11 Gary Dismukes <dismukes@adacore.com>
210 * exp_ch3.adb (Default_Initialize_Object): Call New_Copy_Tree on the
211 result of Get_Simple_Init_Value and pass the source location of the
212 object declaration's object_definition.
214 2018-01-11 Ed Schonberg <schonberg@adacore.com>
216 * exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration): Handle
217 properly object declarations with initializations that are
218 build-in-place function calls, when there is an address specification,
219 either as an aspect specification or an explicit attribute
220 specification clause, for the initialized object.
221 * freeze.adb (Check_Address_Clause): Do not remove side-effects from
222 initial expressions in the case of a build-in-place call.
224 2018-01-11 Piotr Trojanek <trojanek@adacore.com>
226 * sem_eval.adb (Is_Null_Range): Retrieve the full view when called on a
227 private (sub)type; refactor to avoid early return statement.
228 (Not_Null_Range): Same as above.
230 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
232 * freeze.adb (Freeze_Entity): Ensure that a Ghost type is not
233 concurrent, nor effectively volatile.
234 * ghost.adb (Check_Ghost_Type): New routine.
235 * ghost.ads (Check_Ghost_Type): New routine.
236 * sem_util.adb (Is_Declaration): Reimplemented. The routine can now
237 consider specific subsets of declarations.
238 (Is_Declaration_Other_Than_Renaming): Removed. Its functionality is
239 replicated by Is_Declaration.
240 * sem_util.ads (Is_Declaration): New parameter profile. Update the
242 (Is_Declaration_Other_Than_Renaming): Removed.
244 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
246 * sem_ch5.adb (Analyze_Assignment): Assignments to variables that act
247 as Part_Of consituents of single protected types are illegal when they
248 take place inside a protected function.
249 (Diagnose_Non_Variable_Lhs): Use Within_Function to check for an
251 (Is_Protected_Part_Of_Constituent): New routine.
252 (Within_Function): New routine.
254 2018-01-11 Arnaud Charlet <charlet@adacore.com>
256 Bump copyright notices to 2018.
258 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
260 * binde.adb, par-ch6.adb, par-ch9.adb, sem_ch12.adb, sem_ch13.adb:
263 2018-01-11 Justin Squirek <squirek@adacore.com>
265 * par-ch6.adb (Scan_Body_Or_Expression_Function): Add additional check
266 to make sure a given expression function is properly parenthesized.
268 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
270 * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Check the
271 categorization of a subprogram body which does not complete a previous
274 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
276 * sem_ch10.adb (Check_Private_Child_Unit): Ensure that the enclosing
277 scope of package Ada is Standard.
279 2018-01-11 Ed Schonberg <schonberg@adacore.com>
281 * sem_ch13.adb (Replace_Type_Ref): Handle properly reference to a
282 subcomponent of the current entity when building the body for a dynamic
283 predicate function for a record with composite subcomponents.
285 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
287 * exp_aggr.adb (Convert_Aggr_In_Object_Decl): Update the call to
288 Establish_Transient_Scope.
289 (Convert_To_Assignments): Update the call to Establish_Transient_Scope.
290 (Expand_Array_Aggregate): Update the call to Establish_Transient_Scope.
291 * exp_ch6.adb (Expand_Call_Helper): Update the call to
292 Establish_Transient_Scope.
293 (Make_Build_In_Place_Call_In_Object_Declaration): Update the call to
294 Establish_Transient_Scope.
295 * exp_ch7.adb (Establish_Transient_Scope): Restructured. Delegate the
296 management of the secondary stack to an enclosing scope if there is no
297 suitable construct to wrap, and the transient scope was intended to
298 manage the secondary stack.
299 (Find_Node_To_Be_Wrapped): Restructured. A case_statement_alternative
300 is a valid boundary for a transient expression which comes from the
301 statements of the alternative, otherwise alternatives cannot be
302 wrapped. Assignments of controlled objects which have controlled
303 actions suppressed now stop the traversal as there is no point in
304 looking for an enclosing construct. Add several N_xxx_Body choices to
305 the termination conditions for completeness.
306 * exp_ch7.ads (Establish_Transient_Scope): Update the parameter profile
307 and the associated comment on usage.
308 * exp_smem.adb (Add_Shared_Var_Lock_Procs): Update the call to
309 Establish_Transient_Scope.
310 (Add_Write_After): Update the call to Establish_Transient_Scope.
311 * sem_res.adb (Check_Initialization_Call): Removed.
312 (Resolve_Actuals): Account for additional cases where finalization
313 actions are required by utilizing predicate Needs_Finalization rather
315 (Resolve_Call): Type initialization procedures can now utilize
316 transient scopes to manage the secondary stack, thus preventing leaks
317 during initialization. Remove the previous kludgy algorithm which
318 attempts to manage the secondary stack at the object creation site.
320 2018-01-11 Jerome Lambourg <lambourg@adacore.com>
322 * libgnat/g-soliop__qnx.ads: New.
323 * adaint.c, adaint.h, cstreams.c, s-oscons-tmplt.c, sysdep.c: Update
326 2018-01-11 Bob Duff <duff@adacore.com>
328 * par-ch9.adb (P_Protected_Operation_Declaration_Opt): Give an error if
329 a null procedure occurs in a protected definition.
331 2018-01-11 Bob Duff <duff@adacore.com>
333 * binderr.ads, namet.ads: Minor reformatting.
335 2018-01-11 Bob Duff <duff@adacore.com>
337 * doc/gnat_ugn/gnat_utility_programs.rst: Improve documentation of
340 2018-01-11 Bob Duff <duff@adacore.com>
342 * binde.adb (Force_Elab_Order): Give an error if there are duplicate
345 2018-01-11 Ed Schonberg <schonberg@adacore.com>
347 * sem_ch6.adb (Freeze_Expr_Types): If an access value is the
348 controlling argument of a dispatching call. freeze the corresponding
351 2018-01-11 Ben Brosgol <brosgol@adacore.com>
353 * doc/Makefile: Add Sphinx option -W to treat warnings as errors.
355 2018-01-11 Ben Brosgol <brosgol@adacore.com>
357 * doc/gnat_rm/implementation_defined_aspects.rst: Minor type/wording
359 * gnat_rm.texi: Regenerate.
361 2018-01-11 Ed Schonberg <schonberg@adacore.com>
363 * sem_ch12.adb (Check_Fixed_Point_Type): Do not apply check if the
364 formsl type corresponding to the actual fixed point type is private,
365 because in this case there can be no suspicious arithmetic operations
366 in the generic unless they reference a formal subprogram. Clarify
369 2018-01-11 Javier Miranda <miranda@adacore.com>
371 * exp_util.adb (Remove_Side_Effects): No action done for functions
372 returning class-wide types since it requires generating code using
373 'reference and the CCG target has no secondary stack.
374 * gnat1drv.adb: Disable building static dispatch tables when generating
377 2018-01-11 Piotr Trojanek <trojanek@adacore.com>
379 * libgnat/a-direio.ads, libgnat/a-sequio.ads, libgnat/a-ststio.ads,
380 libgnat/a-textio.ads, libgnat/a-witeio.ads, libgnat/a-ztexio.ads
381 (File_Type): Add Default_Initial_Condition aspect.
383 2018-01-11 Pascal Obry <obry@adacore.com>
385 * libgnat/s-os_lib.adb (Normalize_Pathname): New implementation.
387 2018-01-11 Bob Duff <duff@adacore.com>
389 * doc/gnat_ugn/gnat_utility_programs.rst: Rewrite gnatpp documentation
390 to match what the Libadalang-based version does.
391 * doc/gnat_ugn/about_this_guide.rst: Update reference.
393 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
395 * sem_res.adb (Uses_SS): A controlled type requires the secondary stack
396 if it contains at least one component declaration employing a function
397 call returning on the secondary stack.
399 2018-01-11 Yannick Moy <moy@adacore.com>
401 * doc/gnat_rm/standard_and_implementation_defined_restrictions.rst:
402 Update description of restriction SPARK_05 with SPARK 2014.
403 * gnat_rm.texi: Regenerate.
405 2018-01-11 Vasiliy Fofanov <fofanov@adacore.com>
407 * doc/gnat_ugn/gnat_utility_programs.rst: Fix layout.
409 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
411 * exp_aggr.adb, exp_ch9.adb, exp_util.adb, sem_aggr.adb, sem_ch3.adb,
412 sem_res.adb, sem_util.adb: Minor reformatting.
414 2018-01-11 Ed Schonberg <schonberg@adacore.com>
416 * sem_prag.adb (Analyze_Pragma, case Predicate): Indicate that the type
417 has a delayed aspect which must be processed at the point the type is
418 frozen. This mimics what is done when the predicate is provided by a
421 2018-01-11 Doug Rupp <rupp@adacore.com>
423 * init.c (vxworks): Add macro checks for __aarch64__.
425 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
427 * exp_util.adb (Add_Failure_Expression): New routine.
428 (Make_Predicate_Check): Reimplement the handling of Predicate_Failure.
429 * sem_util.adb (Is_Current_Instance): Code cleanup.
431 2018-01-11 Patrick Bernardi <bernardi@adacore.com>
433 * libgnat/s-parame*.adb, libgnat/s-parame*.ads: Remove unneeded
434 Default_Sec_Stack_Size.
435 * libgnat/s-secsta.adb (SS_Allocate): Handle the fixed secondary stack
436 limit check so that the integer index does not overflow. Check the
437 dynamic stack allocation does not cause the secondary stack pointer to
439 (SS_Info): Align colons.
440 (SS_Init): Cover the case when bootstraping with an old compiler that
441 does not set Default_SS_Size.
443 2018-01-11 Ed Schonberg <schonberg@adacore.com>
445 * sem_ch3.adb (Add_Internal_Interface_Entities): When checking the
446 legality of an inherited operation that may require overriding, ignore
447 primitive_wrappers that correspond to explicit operations that override
448 an interface primitive.
449 * exp_util.adb (Build_Class_Wide_Expression, Replace_Entity): If the
450 operation to which the class-wide expression applies is a protected op.
451 with a primitive_wrapper, verify that the updated inherited expression
452 does not contain an internal call to a protected function. This
453 completes the implementation of AI12-0166.
455 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
457 * ali.adb: Document the remaining letters available for ALI lines.
458 (Scan_ALI): A with clause is internal when it is encoded on a 'Z' line.
459 * ali.ads: Update type With_Record. Field
460 Implicit_With_From_Instantiation is no longer in use. Add field
462 * csinfo.adb (CSinfo): Remove the setup for attribute
463 Implicit_With_From_Instantiation.
464 * lib-writ.adb (Collect_Withs): Correct the logic which marks a unit as
465 either implicitly or explicitly withed.
466 (Is_Implicit_With_Clause): New routine.
467 (Write_ALI): Rename array Implicit_With to Has_Implicit_With to avoid
468 confusion with the with clause attribute by the same name.
469 (Write_With_Lines): Update the emission of 'W', 'Y', and 'Z' headers.
470 * rtsfind.adb (Maybe_Add_With): Code cleanup.
471 * sem_ch8.adb (Present_System_Aux): Code cleanup.
472 * sem_ch10.adb (Expand_With_Clause): Mark the with clause as generated
474 (Implicit_With_On_Parent): Mark the with clause as generated for a
476 * sem_ch12.adb (Inherit_Context): With clauses inherited by an
477 instantiation are no longer marked as Implicit_With_From_Instantiation
478 because they are already marked as implicit.
479 * sem_elab.adb (Ensure_Prior_Elaboration_Static): Remove the kludge
480 which marks implicit with clauses as related to an instantiation.
481 * sinfo.adb (Implicit_With_From_Instantiation): Removed.
482 (Parent_With): New routine.
483 (Set_Implicit_With_From_Instantiation): Removed.
484 (Set_Parent_With): New routine.
485 * sinfo.ads: Update the documentation of attribute Implicit_With.
486 Remove attribute Implicit_With_From_Instantiation along with
487 occurrences in nodes. Add attribute Parent_With along with occurrences
489 (Implicit_With_From_Instantiation): Removed along with pragma Inline.
490 (Parent_With): New routine along with pragma Inline.
491 (Set_Implicit_With_From_Instantiation): Removed along with pragma Inline.
492 (Set_Parent_With): New routine along with pragma Inline.
494 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
496 * sem_util.adb (Find_Enclosing_Scope): Return the unique defining
497 entity when the enclosing construct is a body.
499 2018-01-11 Patrick Bernardi <bernardi@adacore.com>
501 * exp_ch9.adb (Expand_N_Task_Type_Declaration): Simplified
502 Secondary_Stack_Size handling as a pragma is now generated for the
503 corresponding aspect instead of an attribute. Pragma expression is
504 relocated instead of evaluated. Discriminant of the corresponding
505 record type is referenced rather than the type discriminant.
506 (Create_Secondary_Stack_For_Task, Make_Task_Create_Call): Update
507 Secondary_Stack_Size rep item checks to only look for the pragma rep.
508 * sem_ch13.adb (Analyze_One_Aspect): Transform
509 Aspect_Secondary_Stack_Size into a pragma instead of an attribute
510 because the attribute does not have visibility on a task type's
511 discriminants when the type's definition is expanded.
512 (Analyze_Attribute_Definition_Clause): Remove handling of
513 Attribute_Secondary_Stack_Size.
514 * snames.adb-tmpl, snames.ads-tmpl: Remove
515 Attribute_Secondary_Stack_Size, no longer used.
517 2018-01-11 Justin Squirek <squirek@adacore.com>
519 * sem_ch8.adb: Minor comment fix.
521 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
523 * exp_ch4.adb (Process_Action): Do not abandon the inspection of an
524 individual action because the action may denote a complex expression,
525 such as a case statement, which in turn may contain additional
528 2018-01-11 Ed Schonberg <schonberg@adacore.com>
530 * sem_aggr.adb (Resolve_Iterated_Component_Association): Perform
531 analysis on a copy of the expression with a copy of the index variable,
532 because full expansion will rewrite construct into a loop with the
533 original loop variable.
534 * exp_aggr.adb (Gen_Assign): Defer analysis and resolution if the
535 expression is an iterated component association. Full analysis takes
536 place when construct is rewritten as a loop.
537 (In_Place_Assign_OK, Safe_Component): An iterated_component_association
538 is not safe for in-place assignment.
539 * sem_util.adb (Remove_Entity): Handle properly the case of an isolated
540 entity with no homonym and no other entity in the scope.
542 2018-01-11 Justin Squirek <squirek@adacore.com>
544 * sem_prag.adb (Analyze_Pragma:Pragma_Loop_Variant): Modify error
545 message to be printed on the pragma argument identifier.
547 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
549 * exp_util.adb (Build_Invariant_Procedure_Declaration): Set the last
550 entity of the generated invariant procedure in order to construct a
553 2018-01-11 Piotr Trojanek <trojanek@adacore.com>
555 * sem_ch13.adb (Build_Predicate_Functions): Fix minor issues in
558 2018-01-11 Arnaud Charlet <charlet@adacore.com>
560 * einfo.ads, einfo.adb (Activation_Record_Component,
561 Set_Activation_Record_Component, Set_Is_Uplevel_Referenced_Entity):
562 Allow E_Discriminant.
564 2018-01-10 Eric Botcazou <ebotcazou@adacore.com>
566 * gcc-interface/decl.c (gnat_to_gnu_component_type): Apply the check
567 for atomic access once the component size is taken into account and
568 also do it if the component type is Atomic or Volatile_Full_Access.
570 2018-01-04 Eric Botcazou <ebotcazou@adacore.com>
572 * gnatvsn.ads: Bump copyright year.
574 2018-01-03 Richard Sandiford <richard.sandiford@linaro.org>
575 Alan Hayward <alan.hayward@arm.com>
576 David Sherwood <david.sherwood@arm.com>
578 * gcc-interface/misc.c (enumerate_modes): Treat GET_MODE_BITSIZE
581 2018-01-03 Richard Sandiford <richard.sandiford@linaro.org>
582 Alan Hayward <alan.hayward@arm.com>
583 David Sherwood <david.sherwood@arm.com>
585 * gcc-interface/misc.c (enumerate_modes): Treat GET_MODE_PRECISION
588 2018-01-03 Richard Sandiford <richard.sandiford@linaro.org>
589 Alan Hayward <alan.hayward@arm.com>
590 David Sherwood <david.sherwood@arm.com>
592 * gcc-interface/utils.c (gnat_types_compatible_p): Handle
593 polynomial TYPE_VECTOR_SUBPARTS.
595 2018-01-03 Richard Sandiford <richard.sandiford@linaro.org>
596 Alan Hayward <alan.hayward@arm.com>
597 David Sherwood <david.sherwood@arm.com>
599 * gcc-interface/misc.c (enumerate_modes): Handle polynomial
602 2018-01-03 Jakub Jelinek <jakub@redhat.com>
604 Update copyright years.
606 * gnat_ugn.texi: Bump @copying's copyright year.
607 * gnat_rm.texi: Likewise.
609 Copyright (C) 2018 Free Software Foundation, Inc.
611 Copying and distribution of this file, with or without modification,
612 are permitted in any medium without royalty provided the copyright
613 notice and this notice are preserved.