]> gcc.gnu.org Git - gcc.git/blame - gcc/ada/ChangeLog
[Ada] Spurious error on early call region of tagged type
[gcc.git] / gcc / ada / ChangeLog
CommitLineData
7a500fd7
HK
12018-04-04 Hristian Kirtchev <kirtchev@adacore.com>
2
3 * exp_cg.adb: Remove with and use clause for Exp_Disp.
4 * exp_ch9.adb: Remove with and use clause for Exp_Disp.
5 * exp_disp.adb (Is_Predefined_Dispatching_Operation): Moved to Sem_Util.
6 (Is_Predefined_Interface_Primitive): Moved to Sem_Util.
7 (Is_Predefined_Internal_Operation): Moved to Sem_Util.
8 * exp_disp.ads (Is_Predefined_Dispatching_Operation): Moved to Sem_Util.
9 (Is_Predefined_Interface_Primitive): Moved to Sem_Util.
10 (Is_Predefined_Internal_Operation): Moved to Sem_Util.
11 * exp_dist.adb: Remove with and use clause for Exp_Disp.
12 * freeze.adb: Remove with and use clause for Exp_Disp.
13 * sem_cat.adb: Remove with and use clause for Exp_Disp.
14 * sem_ch6.adb: Remove with and use clause for Exp_Disp.
15 * sem_ch12.adb: Remove with and use clause for Exp_Disp.
16 * sem_elab.adb (Check_Overriding_Primitive): Do not process predefined
17 primitives.
18 * sem_util.adb: Remove with and use clause for Exp_Disp.
19 (Is_Predefined_Dispatching_Operation): Moved from Exp_Disp.
20 (Is_Predefined_Interface_Primitive): Moved from Exp_Disp.
21 (Is_Predefined_Internal_Operation): Moved from Exp_Disp.
22 * sem_util.ads (Is_Predefined_Dispatching_Operation): Moved from
23 Exp_Disp.
24 (Is_Predefined_Interface_Primitive): Moved from Exp_Disp.
25 (Is_Predefined_Internal_Operation): Moved from Exp_Disp.
26
516057d3
ES
272018-04-04 Ed Schonberg <schonberg@adacore.com>
28
29 * sem_res.adb (Valid_Conversion): Improve error message on an illegal
30 type conversion whose expression has a limited view of a type.
31
def6e435
ES
322018-05-21 Ed Schonberg <schonberg@adacore.com>
33
34 * exp_ch5.adb (Build_Formal_Container_Iteration): If source has
35 explicit name for iterator loop, preserve that name in expanded
36 construct, for possible use in exit statements.
37
0d8b6803
JM
382018-04-04 Javier Miranda <miranda@adacore.com>
39
40 * sem_ch4.adb (Analyze_Membership_Op): Avoid compiler crash when the
41 spec of a unit has Ada 2012 membership tests with multiple choices and
42 the unit body is not compiled under Ada 2012 mode.
43
92689021
DR
442018-04-04 Doug Rupp <rupp@adacore.com>
45
46 * sigtramp-vxworks-target.inc: Set cfa_reg properly from sigcontext
47 pregs.
48 (CFI_COMMON_REGS): Restore LR jic probed from prologue.
49 (REGNO_PC_OFFSET): Change to correct value for Aarch64.
50
9e40de1d
JR
512018-04-04 Jose Ruiz <ruiz@adacore.com>
52
53 * doc/gnat_ugn/gnat_utility_programs.rst, exp_attr.adb,
54 libgnarl/s-tassta.adb: Minor typo fixes
55
12390626
ES
562018-05-21 Ed Schonberg <schonberg@adacore.com>
57
58 * sem_ch4.adb (Analyze_One_Call): Recognize complex cases where an
59 indexed call originally in prefix forn is itself the prefix of a
60 further call.
61
a2fcf1e0
PT
622018-04-04 Piotr Trojanek <trojanek@adacore.com>
63
64 * sem_eval.adb (Is_Null_Range): Clarify access to the full view of a
65 type.
66 (Not_Null_Range): Same as above.
67
663afa9f
HK
682018-04-04 Hristian Kirtchev <kirtchev@adacore.com>
69
70 * exp_ch3.adb: Minor reformatting.
71 * exp_ch6.adb: Likewise.
72 * freeze.adb: Likewise.
73 * inline.adb: Likewise.
74 * sem_util.adb: Likewise.
75
031936bc
YM
762018-04-04 Yannick Moy <moy@adacore.com>
77
78 * inline.adb (Expand_Inlined_Call.Process_Formals): Use a type
79 conversion instead of an unchecked type conversion when inlining a
80 return statement, unless type qualification is required (for character
81 and string literal) or no check can result from the conversion (for
82 access types).
83 * opt.ads: Update comment.
84
7255f3c3
HK
852018-04-04 Hristian Kirtchev <kirtchev@adacore.com>
86
87 * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Install the elaboration
88 model of the compilation unit spec, if any.
89 * sem_ch7.adb (Analyze_Package_Body_Helper): Install the elaboration
90 model of the compilation unit spec, if any.
91 * sem_ch10.adb (Analyze_Subunit): Install the elaboration model of the
92 parent compilation unit spec, if any.
93 * sem_elab.adb (Check_Elaboration_Scenarios): Restore the elaboration
94 model of the main unit.
95 (Is_Same_Unit): The routine now uses Unit_Entity.
96 (Is_Subunit): Removed.
97 (Normalize_Unit): Removed.
98 (Unit_Entity): New routine.
99 * sem_prag.adb (Analyze_Pragma): Reimplement the handling of pragma
100 Elaboration_Checks. The analysis now ensures that the pragma appears at
101 the configuration level, and on the initial declaration of a unit.
102 Other placements are either flagged as illegal, or ignored.
103 (Check_Duplicate_Elaboration_Checks_Pragma): New routine.
104 (Ignore_Elaboration_Checks_Pragma): New routine.
105 * sem_util.adb (Install_Elaboration_Model): New routine.
106 * sem_util.ads (Install_Elaboration_Model): New routine.
107 * doc/gnat_rm/implementation_defined_pragmas.rst: Update the
108 documentation of pragma Elaboration_Checks.
109 * gnat_rm.texi: Regenerate.
110
18c7a4eb
OH
1112018-04-04 Olivier Hainque <hainque@adacore.com>
112
113 * libgnat/s-trasym__dwarf.adb (Executable_Name): Return argv[0] instead
114 of empty string when argv[0] couldn't be found on PATH.
115 (Enable_Cache): Raise Program_Error instead of attempting a null
116 pointer dereference when the Exec_Module initialization failed.
117
bbb99006
PT
1182018-04-04 Piotr Trojanek <trojanek@adacore.com>
119
120 * libgnarl/a-reatim.ads (Clock_Time): Remove External aspect.
121 * libgnarl/a-taside.ads (Tasking_State): Likewise.
122 * libgnat/a-calend.ads (Clock_Time): Likewise.
123
e3822b0a
YM
1242018-04-04 Yannick Moy <moy@adacore.com>
125
126 * sem_ch6.adb (Analyze_Procedure_Call): Refine test to recognize prefix
127 call notation in inlined call in GNATprove mode.
128
bcc093dc
HK
1292018-05-21 Hristian Kirtchev <kirtchev@adacore.com>
130
131 * einfo.adb (Is_External_State): An abstract state is also external
132 when it is declared with option "synchronous".
133 * einfo.ads: Update the documentation of synthesized attribute
134 Is_External_State.
135 * sem_util.adb (Find_Simple_Properties): New routine.
136 (Is_Enabled_External_Property): New routine.
137 (State_Has_Enabled_Property): Reimplemented. The two flavors of option
138 External have precedence over option Synchronous when determining
139 whether a property is in effect.
140
fe44c442
YM
1412018-04-04 Yannick Moy <moy@adacore.com>
142
143 * sem_eval.adb (Static_Length): Take into account case of variable of
144 subtype string literal.
145
c77384a4
OH
1462018-04-04 Olivier Hainque <hainque@adacore.com>
147
148 * libgnat/s-objrea.ads (Get_Memory_Bounds): Rename as Get_Xcode_Bounds.
149 (Object_Section): Rename Flag_Alloc component as Flag_Xcode.
150 * libgnat/s-objrea.adb (Get_Xcode_Bounds): Adjust to new subprogram and
151 component name.
152 (Get_Section, ELF case): Set Flag_Xcode from SHF_EXECINSTR.
153 * libgnat/s-dwalin.adb (Open): Adjust to the Get_Memory_Bounds name
154 change.
155
0f090200
OH
1562018-04-04 Olivier Hainque <hainque@adacore.com>
157
158 * libgnat/s-dwalin.ads (Dwarf_Context): Change type of Load_Address to
159 Address, and type of Low, High to Storage_Offset.
160 (Low): Rename as Low_Address and convey that the return value is a
161 runtime reference accounting for a load address.
162 * libgnat/s-dwalin.adb (Read_Aranges_Entry): Adjust to the
163 address/offset type changes.
164 (Aranges_Lookup): Likewise.
165 (Symbolic_Address): Likewise.
166 (Symbolic_Traceback): Likewise.
167 (Dump_Cache): Likewise.
168 (Is_Inside): Likewise.
169 (Open): Likewise.
170 (Set_Load_Address): Likewise.
171 (Low_Address): Likewise, and account for C.Load_Address.
172 * libgnat/s-trasym__dwarf.adb (Lt): Use Low_Address instead of Low.
173 (Multi_Module_Symbolic_Traceback): Compare address in traceback
174 with module Low_Address instead of Low.
175
b029cc6e
OH
1762018-04-04 Olivier Hainque <hainque@adacore.com>
177
178 * libgnat/s-dwalin.ads (Dwarf_Context): Rename Load_Slide as
179 Load_Address.
180 * libgnat/s-dwalin.adb (Is_Inside): Adjust accordingly.
181 (Set_Load_Address): Likewise.
182 (Symbolic_Traceback): Likewise.
183
08f8a716
OH
1842018-04-04 Olivier Hainque <hainque@adacore.com>
185
186 * libgnat/s-trasym__dwarf.adb (Add_Module_To_Cache): Expect a
187 Load_Address argument and pass it down to Init_Module.
188 * libgnat/s-tsmona__linux.adb (Build_Cache_For_All_Modules): Pass
189 lm.l_addr as the Load_Address to Add_Module_To_Cache.
190
689751d2
PT
1912018-04-04 Piotr Trojanek <trojanek@adacore.com>
192
193 * einfo.adb (Has_Discriminants): Stronger assertion.
194 (Set_Has_Discriminants): Stronger assertion.
195 * sem_ch13.adb (Push_Scope_And_Install_Discriminants): Adapt to respect
196 the stronger assertion on Has_Discriminant.
197 (Uninstall_Discriminants_And_Pop_Scope): Same as above.
198 * sem_util.adb (New_Copy_Tree): Same as above.
199 * sem_ch7.adb (Generate_Parent_References): Prevent calls to
200 Has_Discriminant on non-type entities that might happen when the
201 compiled code has errors.
202 * sem_ch3.adb (Derived_Type_Declaration): Only call
203 Set_Has_Discriminant on type entities.
204
3ae9d953
AC
2052018-04-04 Arnaud Charlet <charlet@adacore.com>
206
207 * exp_unst.adb (Unnest_Subprogram): Unnest all subprograms relevant for
208 code generation.
209
0c06611c
PT
2102018-04-04 Piotr Trojanek <trojanek@adacore.com>
211
212 * lib.ads: Fix typo in enumeration in comment.
213
8b55e70d
ES
2142018-04-04 Ed Schonberg <schonberg@adacore.com>
215
216 * sem_attr.adb (Analyze_Attribute, case Scalar_Storage_Order): The
217 attribute reference is legal within a generic unit when the prefix is a
218 formal private type.
219
66c0fa2c
HK
2202018-04-04 Hristian Kirtchev <kirtchev@adacore.com>
221
222 * exp_ch7.adb (Establish_Transient_Scope): Code cleanup. Do not
223 delegate the secondary stack management when there is no suitable
224 transient context, and the transient scope was intended to manage the
225 secondary stack because this causes premature reclamation. Change the
226 transient scope creation logic by special casing assignment statements
227 of controlled components for type initialization procedures.
228 (Find_Node_To_Be_Wrapped): Renamed to Find_Transient_Context. Update
229 the comment on usage.
230 (Find_Transient_Context): Change the initinte loop into a while loop.
231 Iterations schemes and iterator specifications are not valid transient
232 contexts because they rely on special processing. Assignment statements
233 are now treated as a normal transient context, special cases are
234 handled by the caller. Add special processing for pragma Check.
235 (Is_OK_Construct): Removed. Its functionality has been merged in
236 routine Find_Transient_Context.
237 * sem_ch5.adb (Check_Call): Reimplemented. Add code to properly
238 retrieve the subprogram being invoked. Use a more accurate predicate
239 (Requires_Transient_Scope) to determine that the function will emply
240 the secondary stack.
241
8016e567
PT
2422018-04-04 Piotr Trojanek <trojanek@adacore.com>
243
244 * ada_get_targ.adb: Fix subprogram body headers.
245 * adabkend.adb: Likewise.
246 * checks.adb: Likewise.
247 * exp_ch3.adb: Likewise.
248 * exp_ch5.adb: Likewise.
249 * exp_ch9.adb: Likewise.
250 * exp_dist.adb: Likewise.
251 * exp_tss.adb: Likewise.
252 * inline.adb: Likewise.
253 * lib-writ.adb: Likewise.
254 * lib-xref-spark_specific.adb: Likewise.
255 * libgnarl/s-osinte__darwin.adb: Likewise.
256 * libgnarl/s-stusta.adb: Likewise.
257 * libgnarl/s-taprop__solaris.adb: Likewise.
258 * libgnarl/s-tposen.adb: Likewise.
259 * libgnarl/s-vxwext__kernel-smp.adb: Likewise.
260 * libgnarl/s-vxwext__kernel.adb: Likewise.
261 * libgnat/a-btgbso.adb: Likewise.
262 * libgnat/a-cfdlli.adb: Likewise.
263 * libgnat/a-cfhama.adb: Likewise.
264 * libgnat/a-cfinve.adb: Likewise.
265 * libgnat/a-cimutr.adb: Likewise.
266 * libgnat/a-coboho.adb: Likewise.
267 * libgnat/a-cofove.adb: Likewise.
268 * libgnat/a-cofuve.adb: Likewise.
269 * libgnat/a-comutr.adb: Likewise.
270 * libgnat/a-exexda.adb: Likewise.
271 * libgnat/a-tags.adb: Likewise.
272 * libgnat/a-tideau.adb: Likewise.
273 * libgnat/a-wtdeau.adb: Likewise.
274 * libgnat/a-ztdeau.adb: Likewise.
275 * libgnat/g-alleve.adb: Likewise.
276 * libgnat/s-excdeb.adb: Likewise.
277 * libgnat/s-parint.adb: Likewise.
278 * libgnat/s-shasto.adb: Likewise.
279 * libgnat/s-traceb__hpux.adb: Likewise.
280 * prepcomp.adb: Likewise.
281 * sem_ch4.adb: Likewise.
282 * sem_ch6.adb: Likewise.
283 * sem_dist.adb: Likewise.
284 * sem_prag.adb: Likewise.
285 * sem_util.adb: Likewise.
286 * sinfo.adb: Likewise.
287 * switch.adb: Likewise.
288
5759c56d
JM
2892018-05-04 John Marino <gnugcc@marino.st>
290
291 PR ada/85635
292 * link.c (BSD platforms): Add missing backslash.
293
9f47a64f
EB
2942018-04-27 Eric Botcazou <ebotcazou@adacore.com>
295
296 PR ada/85540
297 * init.c (__gnat_handle_vms_condition): Add missing parentheses.
298
87ed4159
EB
2992018-04-25 Eric Botcazou <ebotcazou@adacore.com>
300
301 PR ada/85007
302 * gnat_ugn.texi: Regenerate.
303
bd1643cc
EB
3042018-03-23 Eric Botcazou <ebotcazou@adacore.com>
305
306 PR ada/85007
307 * gnatlink.adb (Gnatlink): Remove handling of -b switch.
308 * doc/gnat_ugn/building_executable_programs_with_gnat.rst (gnatlink):
309 Remove documentation of -b switch.
310
f8e56962
EB
3112018-03-23 Eric Botcazou <ebotcazou@adacore.com>
312
313 PR ada/85036
314 * gnatlink.adb (Process_Args): Drop existing link switches if multiple
315 switches are passed for --LINK.
316
50536fd5
EB
3172018-03-12 Eric Botcazou <ebotcazou@adacore.com>
318
319 PR ada/82813
320 * gcc-interface/misc.c (gnat_post_options): Disable string overflow
321 warnings.
322
f1bc6414
EB
3232018-03-10 Eric Botcazou <ebotcazou@adacore.com>
324
325 * gcc-interface/trans.c (node_has_volatile_full_access) <N_Identifier>:
326 Consider only entities for objects.
327
6cde8c54
SH
3282018-03-07 Sebastian Huber <sebastian.huber@embedded-brains.de>
329
330 * gcc-interface/Makefile.in (OSCONS_CPP): Remove redundant
331 $(GNATLIBCFLAGS).
332 (OSCONS_EXTRACT): Add $(GNATLIBCFLAGS_FOR_C).
333
21288963
EB
3342018-03-06 Eric Botcazou <ebotcazou@adacore.com>
335
336 * gcc-interface/trans.c (convert_with_check): Fix typo in the condition
337 guarding the overflow check emitted for the upper bound of a floating-
338 point conversion.
339
0d6091d9
EB
3402018-03-06 Eric Botcazou <ebotcazou@adacore.com>
341
342 * gcc-interface/utils.c (def_builtin_1): Bail out on error_mark_node.
343
c6db43fa
EB
3442018-02-28 Eric Botcazou <ebotcazou@adacore.com>
345
346 * libgnat/i-cexten.ads (Float_128): New type.
347
dacdc68f
EB
3482018-02-02 Eric Botcazou <ebotcazou@adacore.com>
349
350 * gcc-interface/decl.c (array_type_has_nonaliased_component): Return
351 false if the component type is a pointer.
352
fab58852
GD
3532018-01-11 Gary Dismukes <dismukes@adacore.com>
354
355 * exp_ch3.adb (Default_Initialize_Object): Call New_Copy_Tree on the
356 result of Get_Simple_Init_Value and pass the source location of the
357 object declaration's object_definition.
358
a2dbe7d5
ES
3592018-01-11 Ed Schonberg <schonberg@adacore.com>
360
361 * exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration): Handle
362 properly object declarations with initializations that are
363 build-in-place function calls, when there is an address specification,
364 either as an aspect specification or an explicit attribute
365 specification clause, for the initialized object.
366 * freeze.adb (Check_Address_Clause): Do not remove side-effects from
367 initial expressions in the case of a build-in-place call.
368
791f2d03
PT
3692018-01-11 Piotr Trojanek <trojanek@adacore.com>
370
371 * sem_eval.adb (Is_Null_Range): Retrieve the full view when called on a
372 private (sub)type; refactor to avoid early return statement.
373 (Not_Null_Range): Same as above.
374
a85dbeec
HK
3752018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
376
377 * freeze.adb (Freeze_Entity): Ensure that a Ghost type is not
378 concurrent, nor effectively volatile.
379 * ghost.adb (Check_Ghost_Type): New routine.
380 * ghost.ads (Check_Ghost_Type): New routine.
381 * sem_util.adb (Is_Declaration): Reimplemented. The routine can now
382 consider specific subsets of declarations.
383 (Is_Declaration_Other_Than_Renaming): Removed. Its functionality is
384 replicated by Is_Declaration.
385 * sem_util.ads (Is_Declaration): New parameter profile. Update the
386 comment on usage.
387 (Is_Declaration_Other_Than_Renaming): Removed.
388
5efc1c00
HK
3892018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
390
391 * sem_ch5.adb (Analyze_Assignment): Assignments to variables that act
392 as Part_Of consituents of single protected types are illegal when they
393 take place inside a protected function.
394 (Diagnose_Non_Variable_Lhs): Use Within_Function to check for an
395 enclosing function.
396 (Is_Protected_Part_Of_Constituent): New routine.
397 (Within_Function): New routine.
398
4dfba737
AC
3992018-01-11 Arnaud Charlet <charlet@adacore.com>
400
401 Bump copyright notices to 2018.
402
27d357ca
HK
4032018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
404
405 * binde.adb, par-ch6.adb, par-ch9.adb, sem_ch12.adb, sem_ch13.adb:
406 Minor reformatting.
407
cb488118
JS
4082018-01-11 Justin Squirek <squirek@adacore.com>
409
410 * par-ch6.adb (Scan_Body_Or_Expression_Function): Add additional check
411 to make sure a given expression function is properly parenthesized.
412
ed27b86b
HK
4132018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
414
415 * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Check the
416 categorization of a subprogram body which does not complete a previous
417 declaration.
418
715a5d51
HK
4192018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
420
421 * sem_ch10.adb (Check_Private_Child_Unit): Ensure that the enclosing
422 scope of package Ada is Standard.
423
a2fd4f0e
ES
4242018-01-11 Ed Schonberg <schonberg@adacore.com>
425
426 * sem_ch13.adb (Replace_Type_Ref): Handle properly reference to a
427 subcomponent of the current entity when building the body for a dynamic
428 predicate function for a record with composite subcomponents.
429
6560f851
HK
4302018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
431
432 * exp_aggr.adb (Convert_Aggr_In_Object_Decl): Update the call to
433 Establish_Transient_Scope.
434 (Convert_To_Assignments): Update the call to Establish_Transient_Scope.
435 (Expand_Array_Aggregate): Update the call to Establish_Transient_Scope.
436 * exp_ch6.adb (Expand_Call_Helper): Update the call to
437 Establish_Transient_Scope.
438 (Make_Build_In_Place_Call_In_Object_Declaration): Update the call to
439 Establish_Transient_Scope.
440 * exp_ch7.adb (Establish_Transient_Scope): Restructured. Delegate the
441 management of the secondary stack to an enclosing scope if there is no
442 suitable construct to wrap, and the transient scope was intended to
443 manage the secondary stack.
444 (Find_Node_To_Be_Wrapped): Restructured. A case_statement_alternative
445 is a valid boundary for a transient expression which comes from the
446 statements of the alternative, otherwise alternatives cannot be
447 wrapped. Assignments of controlled objects which have controlled
448 actions suppressed now stop the traversal as there is no point in
449 looking for an enclosing construct. Add several N_xxx_Body choices to
450 the termination conditions for completeness.
451 * exp_ch7.ads (Establish_Transient_Scope): Update the parameter profile
452 and the associated comment on usage.
453 * exp_smem.adb (Add_Shared_Var_Lock_Procs): Update the call to
454 Establish_Transient_Scope.
455 (Add_Write_After): Update the call to Establish_Transient_Scope.
456 * sem_res.adb (Check_Initialization_Call): Removed.
457 (Resolve_Actuals): Account for additional cases where finalization
458 actions are required by utilizing predicate Needs_Finalization rather
459 than Is_Controlled.
460 (Resolve_Call): Type initialization procedures can now utilize
461 transient scopes to manage the secondary stack, thus preventing leaks
462 during initialization. Remove the previous kludgy algorithm which
463 attempts to manage the secondary stack at the object creation site.
464
c9e80306
JL
4652018-01-11 Jerome Lambourg <lambourg@adacore.com>
466
467 * libgnat/g-soliop__qnx.ads: New.
468 * adaint.c, adaint.h, cstreams.c, s-oscons-tmplt.c, sysdep.c: Update
469 for QNX.
470
4727f693
BD
4712018-01-11 Bob Duff <duff@adacore.com>
472
473 * par-ch9.adb (P_Protected_Operation_Declaration_Opt): Give an error if
474 a null procedure occurs in a protected definition.
475
1ceee6a1
BD
4762018-01-11 Bob Duff <duff@adacore.com>
477
478 * binderr.ads, namet.ads: Minor reformatting.
479
e22e7f06
BD
4802018-01-11 Bob Duff <duff@adacore.com>
481
482 * doc/gnat_ugn/gnat_utility_programs.rst: Improve documentation of
483 xml2gnat.
484
8207dc23
BD
4852018-01-11 Bob Duff <duff@adacore.com>
486
487 * binde.adb (Force_Elab_Order): Give an error if there are duplicate
488 unit names.
489
52c5090a
ES
4902018-01-11 Ed Schonberg <schonberg@adacore.com>
491
492 * sem_ch6.adb (Freeze_Expr_Types): If an access value is the
493 controlling argument of a dispatching call. freeze the corresponding
494 designated type.
495
2e01b698
BB
4962018-01-11 Ben Brosgol <brosgol@adacore.com>
497
498 * doc/Makefile: Add Sphinx option -W to treat warnings as errors.
499
f5c31a46
BB
5002018-01-11 Ben Brosgol <brosgol@adacore.com>
501
502 * doc/gnat_rm/implementation_defined_aspects.rst: Minor type/wording
503 corrections.
504 * gnat_rm.texi: Regenerate.
505
07733aa1
ES
5062018-01-11 Ed Schonberg <schonberg@adacore.com>
507
508 * sem_ch12.adb (Check_Fixed_Point_Type): Do not apply check if the
509 formsl type corresponding to the actual fixed point type is private,
510 because in this case there can be no suspicious arithmetic operations
511 in the generic unless they reference a formal subprogram. Clarify
512 warning.
513
78cac738
JM
5142018-01-11 Javier Miranda <miranda@adacore.com>
515
516 * exp_util.adb (Remove_Side_Effects): No action done for functions
517 returning class-wide types since it requires generating code using
518 'reference and the CCG target has no secondary stack.
519 * gnat1drv.adb: Disable building static dispatch tables when generating
520 C code.
521
210fef2d
PT
5222018-01-11 Piotr Trojanek <trojanek@adacore.com>
523
524 * libgnat/a-direio.ads, libgnat/a-sequio.ads, libgnat/a-ststio.ads,
525 libgnat/a-textio.ads, libgnat/a-witeio.ads, libgnat/a-ztexio.ads
526 (File_Type): Add Default_Initial_Condition aspect.
527
7d1553e2
PO
5282018-01-11 Pascal Obry <obry@adacore.com>
529
530 * libgnat/s-os_lib.adb (Normalize_Pathname): New implementation.
531
1646b09f
BD
5322018-01-11 Bob Duff <duff@adacore.com>
533
534 * doc/gnat_ugn/gnat_utility_programs.rst: Rewrite gnatpp documentation
535 to match what the Libadalang-based version does.
536 * doc/gnat_ugn/about_this_guide.rst: Update reference.
537
7460ccc7
HK
5382018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
539
540 * sem_res.adb (Uses_SS): A controlled type requires the secondary stack
541 if it contains at least one component declaration employing a function
542 call returning on the secondary stack.
543
a5b2e440
YM
5442018-01-11 Yannick Moy <moy@adacore.com>
545
546 * doc/gnat_rm/standard_and_implementation_defined_restrictions.rst:
547 Update description of restriction SPARK_05 with SPARK 2014.
548 * gnat_rm.texi: Regenerate.
549
151af7d2
VF
5502018-01-11 Vasiliy Fofanov <fofanov@adacore.com>
551
552 * doc/gnat_ugn/gnat_utility_programs.rst: Fix layout.
553
10fdda1c
HK
5542018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
555
556 * exp_aggr.adb, exp_ch9.adb, exp_util.adb, sem_aggr.adb, sem_ch3.adb,
557 sem_res.adb, sem_util.adb: Minor reformatting.
558
4d6000d7
ES
5592018-01-11 Ed Schonberg <schonberg@adacore.com>
560
561 * sem_prag.adb (Analyze_Pragma, case Predicate): Indicate that the type
562 has a delayed aspect which must be processed at the point the type is
563 frozen. This mimics what is done when the predicate is provided by a
564 source aspect.
565
19fb0439
DR
5662018-01-11 Doug Rupp <rupp@adacore.com>
567
568 * init.c (vxworks): Add macro checks for __aarch64__.
569
80631298
HK
5702018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
571
572 * exp_util.adb (Add_Failure_Expression): New routine.
573 (Make_Predicate_Check): Reimplement the handling of Predicate_Failure.
574 * sem_util.adb (Is_Current_Instance): Code cleanup.
575
6a5e79b4
PB
5762018-01-11 Patrick Bernardi <bernardi@adacore.com>
577
578 * libgnat/s-parame*.adb, libgnat/s-parame*.ads: Remove unneeded
579 Default_Sec_Stack_Size.
580 * libgnat/s-secsta.adb (SS_Allocate): Handle the fixed secondary stack
581 limit check so that the integer index does not overflow. Check the
582 dynamic stack allocation does not cause the secondary stack pointer to
583 overflow.
584 (SS_Info): Align colons.
585 (SS_Init): Cover the case when bootstraping with an old compiler that
586 does not set Default_SS_Size.
587
5cb78fb8
ES
5882018-01-11 Ed Schonberg <schonberg@adacore.com>
589
590 * sem_ch3.adb (Add_Internal_Interface_Entities): When checking the
591 legality of an inherited operation that may require overriding, ignore
592 primitive_wrappers that correspond to explicit operations that override
593 an interface primitive.
594 * exp_util.adb (Build_Class_Wide_Expression, Replace_Entity): If the
595 operation to which the class-wide expression applies is a protected op.
596 with a primitive_wrapper, verify that the updated inherited expression
597 does not contain an internal call to a protected function. This
598 completes the implementation of AI12-0166.
599
94ce4941
HK
6002018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
601
602 * ali.adb: Document the remaining letters available for ALI lines.
603 (Scan_ALI): A with clause is internal when it is encoded on a 'Z' line.
604 * ali.ads: Update type With_Record. Field
605 Implicit_With_From_Instantiation is no longer in use. Add field
606 Implicit_With.
607 * csinfo.adb (CSinfo): Remove the setup for attribute
608 Implicit_With_From_Instantiation.
609 * lib-writ.adb (Collect_Withs): Correct the logic which marks a unit as
610 either implicitly or explicitly withed.
611 (Is_Implicit_With_Clause): New routine.
612 (Write_ALI): Rename array Implicit_With to Has_Implicit_With to avoid
613 confusion with the with clause attribute by the same name.
614 (Write_With_Lines): Update the emission of 'W', 'Y', and 'Z' headers.
615 * rtsfind.adb (Maybe_Add_With): Code cleanup.
616 * sem_ch8.adb (Present_System_Aux): Code cleanup.
617 * sem_ch10.adb (Expand_With_Clause): Mark the with clause as generated
618 for a parent unit.
619 (Implicit_With_On_Parent): Mark the with clause as generated for a
620 parent unit.
621 * sem_ch12.adb (Inherit_Context): With clauses inherited by an
622 instantiation are no longer marked as Implicit_With_From_Instantiation
623 because they are already marked as implicit.
624 * sem_elab.adb (Ensure_Prior_Elaboration_Static): Remove the kludge
625 which marks implicit with clauses as related to an instantiation.
626 * sinfo.adb (Implicit_With_From_Instantiation): Removed.
627 (Parent_With): New routine.
628 (Set_Implicit_With_From_Instantiation): Removed.
629 (Set_Parent_With): New routine.
630 * sinfo.ads: Update the documentation of attribute Implicit_With.
631 Remove attribute Implicit_With_From_Instantiation along with
632 occurrences in nodes. Add attribute Parent_With along with occurrences
633 in nodes.
634 (Implicit_With_From_Instantiation): Removed along with pragma Inline.
635 (Parent_With): New routine along with pragma Inline.
636 (Set_Implicit_With_From_Instantiation): Removed along with pragma Inline.
637 (Set_Parent_With): New routine along with pragma Inline.
638
77519270
HK
6392018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
640
641 * sem_util.adb (Find_Enclosing_Scope): Return the unique defining
642 entity when the enclosing construct is a body.
643
a40d9947
PB
6442018-01-11 Patrick Bernardi <bernardi@adacore.com>
645
646 * exp_ch9.adb (Expand_N_Task_Type_Declaration): Simplified
647 Secondary_Stack_Size handling as a pragma is now generated for the
648 corresponding aspect instead of an attribute. Pragma expression is
649 relocated instead of evaluated. Discriminant of the corresponding
650 record type is referenced rather than the type discriminant.
651 (Create_Secondary_Stack_For_Task, Make_Task_Create_Call): Update
652 Secondary_Stack_Size rep item checks to only look for the pragma rep.
653 * sem_ch13.adb (Analyze_One_Aspect): Transform
654 Aspect_Secondary_Stack_Size into a pragma instead of an attribute
655 because the attribute does not have visibility on a task type's
656 discriminants when the type's definition is expanded.
657 (Analyze_Attribute_Definition_Clause): Remove handling of
658 Attribute_Secondary_Stack_Size.
659 * snames.adb-tmpl, snames.ads-tmpl: Remove
660 Attribute_Secondary_Stack_Size, no longer used.
661
6b199a18
JS
6622018-01-11 Justin Squirek <squirek@adacore.com>
663
664 * sem_ch8.adb: Minor comment fix.
665
05344a33
HK
6662018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
667
668 * exp_ch4.adb (Process_Action): Do not abandon the inspection of an
669 individual action because the action may denote a complex expression,
670 such as a case statement, which in turn may contain additional
671 transient objects.
672
d940c627
ES
6732018-01-11 Ed Schonberg <schonberg@adacore.com>
674
675 * sem_aggr.adb (Resolve_Iterated_Component_Association): Perform
676 analysis on a copy of the expression with a copy of the index variable,
677 because full expansion will rewrite construct into a loop with the
678 original loop variable.
679 * exp_aggr.adb (Gen_Assign): Defer analysis and resolution if the
680 expression is an iterated component association. Full analysis takes
681 place when construct is rewritten as a loop.
682 (In_Place_Assign_OK, Safe_Component): An iterated_component_association
683 is not safe for in-place assignment.
684 * sem_util.adb (Remove_Entity): Handle properly the case of an isolated
685 entity with no homonym and no other entity in the scope.
686
c8f25817
JS
6872018-01-11 Justin Squirek <squirek@adacore.com>
688
689 * sem_prag.adb (Analyze_Pragma:Pragma_Loop_Variant): Modify error
690 message to be printed on the pragma argument identifier.
691
51f3e4e1
HK
6922018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
693
694 * exp_util.adb (Build_Invariant_Procedure_Declaration): Set the last
695 entity of the generated invariant procedure in order to construct a
696 proper entity chain.
697
593e3172
PT
6982018-01-11 Piotr Trojanek <trojanek@adacore.com>
699
700 * sem_ch13.adb (Build_Predicate_Functions): Fix minor issues in
701 comment.
702
89a4fa68
AC
7032018-01-11 Arnaud Charlet <charlet@adacore.com>
704
705 * einfo.ads, einfo.adb (Activation_Record_Component,
706 Set_Activation_Record_Component, Set_Is_Uplevel_Referenced_Entity):
707 Allow E_Discriminant.
708
af95bb26
EB
7092018-01-10 Eric Botcazou <ebotcazou@adacore.com>
710
711 * gcc-interface/decl.c (gnat_to_gnu_component_type): Apply the check
712 for atomic access once the component size is taken into account and
713 also do it if the component type is Atomic or Volatile_Full_Access.
714
5d35675c
EB
7152018-01-04 Eric Botcazou <ebotcazou@adacore.com>
716
717 * gnatvsn.ads: Bump copyright year.
718
73a699ae
RS
7192018-01-03 Richard Sandiford <richard.sandiford@linaro.org>
720 Alan Hayward <alan.hayward@arm.com>
721 David Sherwood <david.sherwood@arm.com>
722
723 * gcc-interface/misc.c (enumerate_modes): Treat GET_MODE_BITSIZE
724 as polynomial.
725
bb94ec76
RS
7262018-01-03 Richard Sandiford <richard.sandiford@linaro.org>
727 Alan Hayward <alan.hayward@arm.com>
728 David Sherwood <david.sherwood@arm.com>
729
730 * gcc-interface/misc.c (enumerate_modes): Treat GET_MODE_PRECISION
731 as polynomial.
732
928686b1
RS
7332018-01-03 Richard Sandiford <richard.sandiford@linaro.org>
734 Alan Hayward <alan.hayward@arm.com>
735 David Sherwood <david.sherwood@arm.com>
736
737 * gcc-interface/utils.c (gnat_types_compatible_p): Handle
738 polynomial TYPE_VECTOR_SUBPARTS.
739
7b777afa
RS
7402018-01-03 Richard Sandiford <richard.sandiford@linaro.org>
741 Alan Hayward <alan.hayward@arm.com>
742 David Sherwood <david.sherwood@arm.com>
743
744 * gcc-interface/misc.c (enumerate_modes): Handle polynomial
745 GET_MODE_NUNITS.
746
65e6aea3 7472018-01-03 Jakub Jelinek <jakub@redhat.com>
0e5b9de3 748
85ec4feb
JJ
749 Update copyright years.
750
65e6aea3
JJ
751 * gnat_ugn.texi: Bump @copying's copyright year.
752 * gnat_rm.texi: Likewise.
ad41bd84 753\f
65e6aea3 754Copyright (C) 2018 Free Software Foundation, Inc.
ad41bd84
JM
755
756Copying and distribution of this file, with or without modification,
757are permitted in any medium without royalty provided the copyright
758notice and this notice are preserved.
This page took 3.244376 seconds and 5 git commands to generate.