[Ada] Tighten Object_Reader.Get_Memory_Bounds
[gcc.git] / gcc / ada / ChangeLog
1 2018-04-04 Olivier Hainque <hainque@adacore.com>
2
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
6 component name.
7 (Get_Section, ELF case): Set Flag_Xcode from SHF_EXECINSTR.
8 * libgnat/s-dwalin.adb (Open): Adjust to the Get_Memory_Bounds name
9 change.
10
11 2018-04-04 Olivier Hainque <hainque@adacore.com>
12
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.
24 (Open): 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.
30
31 2018-04-04 Olivier Hainque <hainque@adacore.com>
32
33 * libgnat/s-dwalin.ads (Dwarf_Context): Rename Load_Slide as
34 Load_Address.
35 * libgnat/s-dwalin.adb (Is_Inside): Adjust accordingly.
36 (Set_Load_Address): Likewise.
37 (Symbolic_Traceback): Likewise.
38
39 2018-04-04 Olivier Hainque <hainque@adacore.com>
40
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.
45
46 2018-04-04 Piotr Trojanek <trojanek@adacore.com>
47
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.
59
60 2018-04-04 Arnaud Charlet <charlet@adacore.com>
61
62 * exp_unst.adb (Unnest_Subprogram): Unnest all subprograms relevant for
63 code generation.
64
65 2018-04-04 Piotr Trojanek <trojanek@adacore.com>
66
67 * lib.ads: Fix typo in enumeration in comment.
68
69 2018-04-04 Ed Schonberg <schonberg@adacore.com>
70
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
73 formal private type.
74
75 2018-04-04 Hristian Kirtchev <kirtchev@adacore.com>
76
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
84 the comment on usage.
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
95 the secondary stack.
96
97 2018-04-04 Piotr Trojanek <trojanek@adacore.com>
98
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.
143
144 2018-05-04 John Marino <gnugcc@marino.st>
145
146 PR ada/85635
147 * link.c (BSD platforms): Add missing backslash.
148
149 2018-04-27 Eric Botcazou <ebotcazou@adacore.com>
150
151 PR ada/85540
152 * init.c (__gnat_handle_vms_condition): Add missing parentheses.
153
154 2018-04-25 Eric Botcazou <ebotcazou@adacore.com>
155
156 PR ada/85007
157 * gnat_ugn.texi: Regenerate.
158
159 2018-03-23 Eric Botcazou <ebotcazou@adacore.com>
160
161 PR ada/85007
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.
165
166 2018-03-23 Eric Botcazou <ebotcazou@adacore.com>
167
168 PR ada/85036
169 * gnatlink.adb (Process_Args): Drop existing link switches if multiple
170 switches are passed for --LINK.
171
172 2018-03-12 Eric Botcazou <ebotcazou@adacore.com>
173
174 PR ada/82813
175 * gcc-interface/misc.c (gnat_post_options): Disable string overflow
176 warnings.
177
178 2018-03-10 Eric Botcazou <ebotcazou@adacore.com>
179
180 * gcc-interface/trans.c (node_has_volatile_full_access) <N_Identifier>:
181 Consider only entities for objects.
182
183 2018-03-07 Sebastian Huber <sebastian.huber@embedded-brains.de>
184
185 * gcc-interface/Makefile.in (OSCONS_CPP): Remove redundant
186 $(GNATLIBCFLAGS).
187 (OSCONS_EXTRACT): Add $(GNATLIBCFLAGS_FOR_C).
188
189 2018-03-06 Eric Botcazou <ebotcazou@adacore.com>
190
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-
193 point conversion.
194
195 2018-03-06 Eric Botcazou <ebotcazou@adacore.com>
196
197 * gcc-interface/utils.c (def_builtin_1): Bail out on error_mark_node.
198
199 2018-02-28 Eric Botcazou <ebotcazou@adacore.com>
200
201 * libgnat/i-cexten.ads (Float_128): New type.
202
203 2018-02-02 Eric Botcazou <ebotcazou@adacore.com>
204
205 * gcc-interface/decl.c (array_type_has_nonaliased_component): Return
206 false if the component type is a pointer.
207
208 2018-01-11 Gary Dismukes <dismukes@adacore.com>
209
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.
213
214 2018-01-11 Ed Schonberg <schonberg@adacore.com>
215
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.
223
224 2018-01-11 Piotr Trojanek <trojanek@adacore.com>
225
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.
229
230 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
231
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
241 comment on usage.
242 (Is_Declaration_Other_Than_Renaming): Removed.
243
244 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
245
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
250 enclosing function.
251 (Is_Protected_Part_Of_Constituent): New routine.
252 (Within_Function): New routine.
253
254 2018-01-11 Arnaud Charlet <charlet@adacore.com>
255
256 Bump copyright notices to 2018.
257
258 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
259
260 * binde.adb, par-ch6.adb, par-ch9.adb, sem_ch12.adb, sem_ch13.adb:
261 Minor reformatting.
262
263 2018-01-11 Justin Squirek <squirek@adacore.com>
264
265 * par-ch6.adb (Scan_Body_Or_Expression_Function): Add additional check
266 to make sure a given expression function is properly parenthesized.
267
268 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
269
270 * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Check the
271 categorization of a subprogram body which does not complete a previous
272 declaration.
273
274 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
275
276 * sem_ch10.adb (Check_Private_Child_Unit): Ensure that the enclosing
277 scope of package Ada is Standard.
278
279 2018-01-11 Ed Schonberg <schonberg@adacore.com>
280
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.
284
285 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
286
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
314 than Is_Controlled.
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.
319
320 2018-01-11 Jerome Lambourg <lambourg@adacore.com>
321
322 * libgnat/g-soliop__qnx.ads: New.
323 * adaint.c, adaint.h, cstreams.c, s-oscons-tmplt.c, sysdep.c: Update
324 for QNX.
325
326 2018-01-11 Bob Duff <duff@adacore.com>
327
328 * par-ch9.adb (P_Protected_Operation_Declaration_Opt): Give an error if
329 a null procedure occurs in a protected definition.
330
331 2018-01-11 Bob Duff <duff@adacore.com>
332
333 * binderr.ads, namet.ads: Minor reformatting.
334
335 2018-01-11 Bob Duff <duff@adacore.com>
336
337 * doc/gnat_ugn/gnat_utility_programs.rst: Improve documentation of
338 xml2gnat.
339
340 2018-01-11 Bob Duff <duff@adacore.com>
341
342 * binde.adb (Force_Elab_Order): Give an error if there are duplicate
343 unit names.
344
345 2018-01-11 Ed Schonberg <schonberg@adacore.com>
346
347 * sem_ch6.adb (Freeze_Expr_Types): If an access value is the
348 controlling argument of a dispatching call. freeze the corresponding
349 designated type.
350
351 2018-01-11 Ben Brosgol <brosgol@adacore.com>
352
353 * doc/Makefile: Add Sphinx option -W to treat warnings as errors.
354
355 2018-01-11 Ben Brosgol <brosgol@adacore.com>
356
357 * doc/gnat_rm/implementation_defined_aspects.rst: Minor type/wording
358 corrections.
359 * gnat_rm.texi: Regenerate.
360
361 2018-01-11 Ed Schonberg <schonberg@adacore.com>
362
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
367 warning.
368
369 2018-01-11 Javier Miranda <miranda@adacore.com>
370
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
375 C code.
376
377 2018-01-11 Piotr Trojanek <trojanek@adacore.com>
378
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.
382
383 2018-01-11 Pascal Obry <obry@adacore.com>
384
385 * libgnat/s-os_lib.adb (Normalize_Pathname): New implementation.
386
387 2018-01-11 Bob Duff <duff@adacore.com>
388
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.
392
393 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
394
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.
398
399 2018-01-11 Yannick Moy <moy@adacore.com>
400
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.
404
405 2018-01-11 Vasiliy Fofanov <fofanov@adacore.com>
406
407 * doc/gnat_ugn/gnat_utility_programs.rst: Fix layout.
408
409 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
410
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.
413
414 2018-01-11 Ed Schonberg <schonberg@adacore.com>
415
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
419 source aspect.
420
421 2018-01-11 Doug Rupp <rupp@adacore.com>
422
423 * init.c (vxworks): Add macro checks for __aarch64__.
424
425 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
426
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.
430
431 2018-01-11 Patrick Bernardi <bernardi@adacore.com>
432
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
438 overflow.
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.
442
443 2018-01-11 Ed Schonberg <schonberg@adacore.com>
444
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.
454
455 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
456
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
461 Implicit_With.
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
473 for a parent unit.
474 (Implicit_With_On_Parent): Mark the with clause as generated for a
475 parent unit.
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
488 in nodes.
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.
493
494 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
495
496 * sem_util.adb (Find_Enclosing_Scope): Return the unique defining
497 entity when the enclosing construct is a body.
498
499 2018-01-11 Patrick Bernardi <bernardi@adacore.com>
500
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.
516
517 2018-01-11 Justin Squirek <squirek@adacore.com>
518
519 * sem_ch8.adb: Minor comment fix.
520
521 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
522
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
526 transient objects.
527
528 2018-01-11 Ed Schonberg <schonberg@adacore.com>
529
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.
541
542 2018-01-11 Justin Squirek <squirek@adacore.com>
543
544 * sem_prag.adb (Analyze_Pragma:Pragma_Loop_Variant): Modify error
545 message to be printed on the pragma argument identifier.
546
547 2018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
548
549 * exp_util.adb (Build_Invariant_Procedure_Declaration): Set the last
550 entity of the generated invariant procedure in order to construct a
551 proper entity chain.
552
553 2018-01-11 Piotr Trojanek <trojanek@adacore.com>
554
555 * sem_ch13.adb (Build_Predicate_Functions): Fix minor issues in
556 comment.
557
558 2018-01-11 Arnaud Charlet <charlet@adacore.com>
559
560 * einfo.ads, einfo.adb (Activation_Record_Component,
561 Set_Activation_Record_Component, Set_Is_Uplevel_Referenced_Entity):
562 Allow E_Discriminant.
563
564 2018-01-10 Eric Botcazou <ebotcazou@adacore.com>
565
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.
569
570 2018-01-04 Eric Botcazou <ebotcazou@adacore.com>
571
572 * gnatvsn.ads: Bump copyright year.
573
574 2018-01-03 Richard Sandiford <richard.sandiford@linaro.org>
575 Alan Hayward <alan.hayward@arm.com>
576 David Sherwood <david.sherwood@arm.com>
577
578 * gcc-interface/misc.c (enumerate_modes): Treat GET_MODE_BITSIZE
579 as polynomial.
580
581 2018-01-03 Richard Sandiford <richard.sandiford@linaro.org>
582 Alan Hayward <alan.hayward@arm.com>
583 David Sherwood <david.sherwood@arm.com>
584
585 * gcc-interface/misc.c (enumerate_modes): Treat GET_MODE_PRECISION
586 as polynomial.
587
588 2018-01-03 Richard Sandiford <richard.sandiford@linaro.org>
589 Alan Hayward <alan.hayward@arm.com>
590 David Sherwood <david.sherwood@arm.com>
591
592 * gcc-interface/utils.c (gnat_types_compatible_p): Handle
593 polynomial TYPE_VECTOR_SUBPARTS.
594
595 2018-01-03 Richard Sandiford <richard.sandiford@linaro.org>
596 Alan Hayward <alan.hayward@arm.com>
597 David Sherwood <david.sherwood@arm.com>
598
599 * gcc-interface/misc.c (enumerate_modes): Handle polynomial
600 GET_MODE_NUNITS.
601
602 2018-01-03 Jakub Jelinek <jakub@redhat.com>
603
604 Update copyright years.
605
606 * gnat_ugn.texi: Bump @copying's copyright year.
607 * gnat_rm.texi: Likewise.
608 \f
609 Copyright (C) 2018 Free Software Foundation, Inc.
610
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.