]> gcc.gnu.org Git - gcc.git/blame - gcc/ada/ChangeLog
[Ada] Minor internal cleanup in repinfo unit
[gcc.git] / gcc / ada / ChangeLog
CommitLineData
7672ab42
EB
12018-05-28 Eric Botcazou <ebotcazou@adacore.com>
2
3 * repinfo.adb (List_Array_Info): Start with an explicit blank line and
4 end with the linker section, if any.
5 (List_Entities): Do not output the linker section for record types,
6 array types and variables.
7 (Print_Expr): Factor out common processing for unary operators and
8 special values. Adjust and reorder the various cases.
9 (List_Object_Info): End with the linker section, if any.
10 (List_Record_Info): Likewise.
11 (List_Type_Info): Do not start with a blank line.
12
529e1a3f
NR
132018-05-25 Nicolas Roche <roche@adacore.com>
14
15 * libgnat/s-valrea.adb (Scan_Real): Abort computation once it is sure
16 that the result will be either -infinite or +infinite.
17
38806cd3
PB
182018-05-25 Patrick Bernardi <bernardi@adacore.com>
19
20 * libgnat/s-parame.ads, libgnat/s-parame__vxworks.ads,
21 libgnat/s-parame__ae653.ads, libgnat/s-parame__hpux.ads (Size_Type):
22 Expand range of type to match the address space of the target.
23 (Task_Storage_Size): Remove unused type.
24
17dd35f4
ES
252018-05-25 Ed Schonberg <schonberg@adacore.com>
26
27 * sem_res.adb (Set_Mixed_Mode_Operand): If the operand is an expression
28 of a fixed point type and the parent is a multiplying operation,
29 resolve the operand with its own type because the context will impose a
30 resulting type on the result of the multiplication by means of
31 approriate conversion.
32
bf5899e7
HK
332018-05-25 Hristian Kirtchev <kirtchev@adacore.com>
34
35 * exp_ch3.adb (Default_Initialize_Object): Ensure that the analysis of
36 the in-place initialization aggregate created for pragmas
37 Initialize_Scalars or Normalize_Scalars is performed with checks
38 suppressed.
39
f70b0116
AC
402018-05-25 Arnaud Charlet <charlet@adacore.com>
41
42 * exp_aggr.adb (Convert_To_Positional): Bump default for
43 Max_Others_Replicate to 32. Update comments.
44 * osint.ads (Unknown_Attributes): No longer pretend this is a constant.
45 (No_File_Info_Cache): Initialize separately.
46 * osint.adb (No_File_Info_Cache): Update initializer.
47
25409c3c
JM
482018-05-25 Javier Miranda <miranda@adacore.com>
49
50 * sem_res.adb (Resolve_Membership_Op): Allow the use of the membership
51 test when the left operand is a class-wide interface and the right
52 operand is not a class-wide type.
53 * exp_ch4.adb (Tagged_Membership): Adding support for interface as the
54 left operand.
55
1f6237e3
ES
562018-05-25 Ed Schonberg <schonberg@adacore.com>
57
58 * exp_aggr.adb (Flatten): A quantified expression cannot be duplicated
59 in an others clause to prevent visibility issues with the generated
60 loop variable.
61 (Component_OK_For_Backend): Return false for a quantified expression.
62 (Check_Static_Component): Ditto.
63
25eadeea
HK
642018-05-25 Hristian Kirtchev <kirtchev@adacore.com>
65
66 * libgnat/s-secsta.adb (SS_Allocate): Reimplemented.
67 (SS_Allocate_Dynamic): New routine. The allocation logic is now split
68 into three distring cases rather than in one loop which attempts to
69 handle all three cases. This rewrite eliminates an issue where the last
70 frame of the stack cannot be freed, thus causing the memory range of a
71 new frame to approach the overflow point of the memory index type.
72 Since the overflow is logically treated as a
73 too-much-memory-on-the-stack scenario, it causes a bogus Storage_Error.
74 (SS_Allocate_Static): New routine. The routine factorizes the static
75 secondary stack-related code from the former SS_Allocate.
76
bd42db1f
SR
772018-05-25 Sergey Rybin <rybin@adacore.com>
78
79 * doc/gnat_ugn/gnat_and_program_execution.rst: Add description of '-U'
80 option for gnatelim.
81
6459a31f
ES
822018-05-25 Ed Schonberg <schonberg@adacore.com>
83
84 * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Do not create
85 Class_Wide_Clone_Body when analyzing a subprogram_body_stub: the clone
86 is created when the proper body of the stub is analyzed.
87 * sem_util.adb (ZBuild_Class_Wide_Clone_Body): If the subprogram body
88 is the proper body of a subunit, the cloned body must be inserted in
89 the declarative list that contains the stub.
90
320fbd1e
JS
912018-05-25 Justin Squirek <squirek@adacore.com>
92
93 * exp_ch6.adb (Expand_Simple_Function_Return): Add guard in check to
94 generate code for 6.5(8-10) so that we don't get an assertion error
95 when dealing with an incomplete return type.
96
29192f7b
AC
972018-05-25 Arnaud Charlet <charlet@adacore.com>
98
99 * pprint.adb (Expression_Name): Strip too long expressions to avoid
100 carrying very large strings.
101
733a4a3d
PB
1022018-05-25 Patrick Bernardi <bernardi@adacore.com>
103
104 * switch-b.adb (Scan_Binder_Switches): binder switch -Q accepts Natural
105 numbers.
106
8ad3525a
DR
1072018-05-25 Doug Rupp <rupp@adacore.com>
108
109 * tracebak.c (aarch64-linux): Implement.
110
f9a0fd0b
JS
1112018-05-25 Justin Squirek <squirek@adacore.com>
112
113 * sem_ch8.adb: Minor reformatting.
114
308ac7f4
PT
1152018-05-25 Piotr Trojanek <trojanek@adacore.com>
116
117 * sem_util.adb (Iterate_Call_Parameters): Fix code convention and
118 assertions.
119
9ea43db6
HK
1202018-05-25 Hristian Kirtchev <kirtchev@adacore.com>
121
122 * einfo.adb, einfo.ads, exp_ch3.adb, exp_ch8.adb, exp_unst.adb,
123 pprint.adb, sem_ch12.adb, sem_ch3.adb, sem_prag.adb, sem_util.adb:
124 Minor reformatting.
125
41610f15
ES
1262018-05-25 Ed Schonberg <schonberg@adacore.com>
127
128 * sem_ch12.adb (Instance_Exists): New function, subsidiary of
129 Validate_Derived_Type_Instance, to verify that all interfaces
130 implemented by the formal type are also implemented by the actual. The
131 verification is complicated when an interface of the formal is declared
132 in a generic unit and the actual is declared in an instance of it.
133 There is currently no mechanism to relate an interface declared within
134 a generic to the corresponding interface in an instance, so we must
135 traverse the list of interfaces of the actual, looking for a name
136 match, and verifying that that interface is declared in an instance.
137
9da8032d
PT
1382018-05-25 Piotr Trojanek <trojanek@adacore.com>
139
140 * sem_util.adb (Iterate_Call_Parameters): Rewrite with extra
141 assertions; replace function versions of Next_Formal/Next_Actual with
142 their procedural versions (which are more concise).
143
5865218e
DR
1442018-05-25 Doug Rupp <rupp@adacore.com>
145
146 * libgnarl/s-osinte__aix.ads, libgnarl/s-osinte__android.ads,
147 libgnarl/s-osinte__darwin.ads, libgnarl/s-osinte__freebsd.ads,
148 libgnarl/s-osinte__hpux.ads, libgnarl/s-osinte__kfreebsd-gnu.ads,
149 libgnarl/s-osinte__linux.ads, libgnarl/s-osinte__lynxos178e.ads,
150 libgnarl/s-osinte__qnx.ads, libgnarl/s-osinte__rtems.ads
151 (Relative_Timed_Wait): Remove.
152 * libgnarl/s-tpopmo.adb (Timed_Sleep, Timed_Delay): Rewrite to allow
153 for incremental looping. Remove references to Rel_Time and
154 Relative_Timed_Wait.
155 * libgnat/s-osprim__posix.adb, libgnat/s-osprim__posix2008.adb
156 (Timed_Delay): Make separate.
157 * libgnat/s-optide.adb: New separate procedure.
158 * libgnat/s-osprim.ads (Max_System_Delay): New constant.
159 * libgnat/s-osprim__lynxos.ads (Max_Sensible_Delay): Set to 6 months.
160 (Max_System_Delay): New constant.
161
a036d1de
ES
1622018-05-25 Ed Schonberg <schonberg@adacore.com>
163
164 * sem_ch12.adb (Validate_Derived_Type_Instance): Verify that the actual
165 for a formal derived type implements all the interfaces declared for
166 the formal.
167
1f233db3
YM
1682018-05-25 Yannick Moy <moy@adacore.com>
169
170 * sem_prag.adb (Check_Applicable_Policy): Deal specially with CodePeer
171 and GNATprove modes when applicable policy is Ignore.
172
0d0cd281
EB
1732018-05-25 Eric Botcazou <ebotcazou@adacore.com>
174
175 * freeze.adb (Freeze_Enumeration_Type): Do not give integer size to a
176 boolean type with convention C.
177 * libgnat/i-cexten.ads (bool): Change to boolean with convention C.
178 * gcc-interface/decl.c (gnat_to_gnu_entity): Add new local variable
179 FOREIGN and use it throughout the function.
180 <E_Enumeration_Type>: Set precision 1 on boolean types with foreign
181 convention.
182 <E_Enumeration_Subtype>: Likewise for subtypes.
183 <E_Record_Type>: Force the size of a storage unit on empty classes.
184 * gcc-interface/utils.c (make_type_from_size) <BOOLEAN_TYPE>: Skip
185 boolean types with precision 1 if the size is the expected one.
186
28e33720
AC
1872018-05-25 Arnaud Charlet <charlet@adacore.com>
188
189 * pprint.adb (Expression_Name): Do not print non ASCII characters.
190
5a7aacd1
BD
1912018-05-25 Bob Duff <duff@adacore.com>
192
193 * libgnat/a-strunb__shared.ads, libgnat/a-stwiun__shared.ads,
194 libgnat/a-stzunb__shared.ads: (Initialize, Adjust): Add pragma Inline.
195
6b5eb7d7
BD
1962018-05-25 Bob Duff <duff@adacore.com>
197
198 * sem_util.ads: Minor comment fix.
199
5fe0b8c3
ES
2002018-05-25 Ed Schonberg <schonberg@adacore.com>
201
202 * exp_unst.adb (Visit_Node): Restrict check for uplevel references in
203 prefixes of array attributes, to prefixes that are entity names whose
204 type is constrained.
205 (Note_Uplevel_Bound): Verify that the bound is declared in an enclosing
206 subprogram, as itype created for loops in pre/postcondition may appear
207 in loops at the library level.
208
8218cfde
ES
2092018-05-25 Ed Schonberg <schonberg@adacore.com>
210
211 * sem_ch13.adb (Build_Predicate_Functions): The predicate function
212 declaration is inserted into the tree and analyzed at that point, so
213 should not be reinserted when the body is constructed. Inside a
214 generic, ensure that the body is not inserted twice in the tree.
215
56ce7e4a
YM
2162018-05-25 Yannick Moy <moy@adacore.com>
217
218 * sem_prag.adb (Check_Grouping): Modify test to ignore statements and
219 declarations not coming from source.
220
5c737a56
FR
2212018-05-25 Fedor Rybin <frybin@adacore.com>
222
223 * doc/gnat_ugn/gnat_utility_programs.rst: Document new switch
224 --copy-environment for gnattest.
225
672dfc39
PT
2262018-05-24 Piotr Trojanek <trojanek@adacore.com>
227
228 * sem_elab.adb (Non_Private_View): Simplify by removing a local Result
229 variable.
230 * sem_prag.adb (Get_Base_Subprogram): Same as above.
231
63a329f8
EB
2322018-05-24 Eric Botcazou <ebotcazou@adacore.com>
233
234 * fe.h (Set_Normalized_First_Bit): Declare.
235 (Set_Normalized_Position): Likewise.
236 * repinfo.adb (List_Record_Layout): Do not use irregular output for a
237 variable position. Fix minor spacing issue.
238 * gcc-interface/decl.c (annotate_rep): If a field has a variable
239 offset, compute the normalized position and annotate it in addition to
240 the bit offset.
241
736e16ef
EB
2422018-05-24 Eric Botcazou <ebotcazou@adacore.com>
243
244 * gcc-interface/trans.c (Handled_Sequence_Of_Statements_to_gnu):
245 Constify and rename variables. Fix formatting.
246 (gnat_to_gnu) <N_Exception_Handler>: Minor tweak.
247 <N_Raise_Statement>: Likewise.
248
01243764
JM
2492018-05-24 Javier Miranda <miranda@adacore.com>
250
251 * exp_ch8.adb (Build_Body_For_Renaming): Adding support to build the
252 body of a variant record equality renaming.
253 (Expand_N_Subprogram_Renaming_Declaration): Adapt the code to the new
254 implementation of Build_Body_For_Renaming.
255 * exp_ch3.ads (Build_Variant_Record_Equality): New library level
256 function that factorizes the functionality needed by
257 Build_Body_For_Renaming and Expand_Freeze_Record_Type to build the body
258 of a variant record equality subprogram.
259 * exp_ch3.adb (Build_Variant_Record_Equality): New subprogram.
260 (Build_Variant_Record_Equality): New local procedure of
261 Expand_Freeze_Record_Type containing all the code specific for freezing
262 the record type that cannot be place in the new library level function.
263
7037d2bb
ES
2642018-05-24 Ed Schonberg <schonberg@adacore.com>
265
266 * einfo.ads, einfo.adb (Is_Activation_Record): New flag on
267 in_parameters, used when unesting subprograms for LLVM, to indicate
268 that a generated parameter carries the activation record from the
269 enclosing subprogram.
270 * exp_unst.adb (Check_Static_Type): Handle array attributes of types
271 whose bounds may contain up-level references that need to be added to
272 an activation recoord.
273 (Add_Extra_Formal): Set Is_Activation_Record on new formal.
274
d72ba19f
YM
2752018-05-24 Yannick Moy <moy@adacore.com>
276
277 * pprint.adb (Expression_Image): Improve the printing of expressions,
278 by taking more cases into account, in particular qualified expressions
279 and aggregates. Also count more the number of parentheses to close
280 after the expression.
281
24e95966
JM
2822018-05-24 Javier Miranda <miranda@adacore.com>
283
284 * sem_ch3.adb (Is_Visible_Component): For untagged types add missing
285 check for renamed discriminants.
286 * sem_ch4.adb (Analyze_Overloaded_Selected_Component,
287 Analyze_Selected_Component, Check_Misspelled_Selector): For calls to
288 Is_Visible_Component pass the associated selector node to allow
289 checking renamed discriminants on untagged types.
290
5a5925ee
ES
2912018-05-24 Ed Schonberg <schonberg@adacore.com>
292
293 * sem_ch8.adb (Analyze_Use_Type): Do not assign the Prev_Use_Clause
294 link to a use_type clause if this would cause an infinite loop in the
295 machinery that detects redundant use clauses. This may happen when the
296 redundant clauses appear in the context of a child unit and the context
297 of its parent.
298
e15bbd5f
PT
2992018-05-24 Piotr Trojanek <trojanek@adacore.com>
300
301 * sinfo.ads: Fix grammar in comment.
302
3f6d1daa
JS
3032018-05-24 Justin Squirek <squirek@adacore.com>
304
305 * einfo.ads, einfo.adb (Append_Entity): Modified to use Link_Entities
306 and manage doubly-linked entity chain.
307 (Nested_Scenarios): Removed entity field used for optimization during
308 elaboration to make room for the new field Prev_Entity.
309 (Link_Entities): Added to replace redundant calls to Set_Next_Entity
310 and Set_Prev_Entity as well as centralize changes to the entity chain.
311 (Predicated_Parent): Modified to use Node38.
312 (Prev_Entity): Added to fetch new node field Prev_Entity in all entity
313 types.
314 (Remove_Entity): Moved from sem_util.
315 (Set_Nested_Scenarios): Deleted.
316 (Set_Predicated_Parent): Modified to use Node38.
317 (Set_Prev_Entity): Added to set Prev_Entity field.
318 (Set_Validated_Object): Modified to use Node38.
319 (Unlink_Next_Entity): Added to process Prev_Entity when an unlinking
320 action is required.
321 (Validated_Object): Modified to use Node38.
322 (Write_Field36_Name): Remove Nested_Scenarios, Validated_Object, and
323 predicated parent cases.
324 (Write_Field38_Name): Add predicated parent and Validated_Object cases.
325 * sem_ch3.adb (Process_Subtype): Add guard to protect against
326 inappropriate marking of Predicated_Parent to non-itype subtypes.
327 (Make_Class_Wide_Type): Preserve Prev_Entity field and set in new type.
328 (Copy_And_Swap): Add setting of Prev_Entity.
329 (Build_derived_Record_Type): Replace Set_Next_Entity w/ Link_Entities.
330 * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Replace Set_Next_Entity
331 w/ Link_Entities.
332 (New_Overloaded_Entity): Remove block created to search for previous
333 entities in the entity chain with relevant calls to Prev_Entity as well
334 as replace duplicated code from Remove_Entity_And_Homonym with a call
335 to that subprogram.
336 * sem_ch7.adb (Exchange_Declarations): Replace Set_Next_Entity w/
337 Link_Entities.
338 * sem_elab.adb (Find_And_Process_Nested_Scenarios): Remove global and
339 initial subprogram declarations related to Nested_Scenarios.
340 (Process_Nested_Scenarios): Deleted.
341 (Save_Scenario): Deleted.
342 (Traverse_Body): Remove optimization for Nested_Scenarios so as to free
343 node space in the entity tree.
344 * sem_util.adb, sem_util.ads (Remove_Entity): Moved to einfo.
345 (Remove_Entity_And_Homonym): Added to separate functionality of
346 Remove_Entity from the homonym chain directly.
347 * exp_attr.adb (Expand_N_Attribute_Reference): Replace Set_Next_Entity
348 w/ Link_Entities and Unlink_Next_Entity.
349 * exp_ch3.adb (Expand_N_Object_Declaration): Replace Set_Next_Entity w/
350 Link_Entities.
351 * exp_ch6.adb (Replace_Renaming_Declaration_Id): Replace
352 Set_Next_Entity w/ Link_Entities.
353 * exp_disp.adb (Expand_Dispatching_Call): Replace Set_Next_Entity w/
354 Link_Entities and Unlink_Next_Entity.
355 * exp_spark.adb (Expand_SPARK_N_Object_Renaming_Declaration): Replace
356 call to Remove_Entity with its new incarnation.
357 * exp_util.adb (New_Class_Wide_Subtype): Add setting of Prev_Entity.
358 * freeze.adb (Freeze_Record_Type): Replace Set_Next_Entity w/
359 Link_Entities.
360
dc59bed2
HK
3612018-05-24 Hristian Kirtchev <kirtchev@adacore.com>
362
363 * sem_ch10.adb (Expand_Limited_With_Clause): Update the call to
364 Install_Limited_Withed_Unit.
365 (Expand_With_Clause): Update the call to Install_Withed_Unit.
366 (Implicit_With_On_Parent): Update the call to Install_Withed_Unit.
367 (Install_Context_Clauses): Update the call to Install_Withed_Unit.
368 (Install_Limited_Context_Clauses): Update the calls to
369 Install_Limited_Withed_Unit.
370 (Install_Limited_Withed_Unit): Renamed to better illustrate its
371 purpose.
372 (Install_Private_With_Clauses): Update the calls to Install_Withed_Unit
373 and Install_Limited_Withed_Unit.
374 (Install_With_Clause): Uninstall a limited with clause if a [private]
375 with clause is given for the same package.
376 (Install_Withed_Unit): Renamed to better illustrate its purpose.
377 (Remove_Limited_With_Unit): New routine.
378
45c6d784
EB
3792018-05-24 Eric Botcazou <ebotcazou@adacore.com>
380
381 * raise-gcc.c (__gnat_SEH_error_handler): Remove prototype.
382 (__gnat_personality_seh0): Adjust and beef up comments, and
383 fix formatting throughout.
384 (__gnat_adjust_context): Deal minimally with version 2.
385 * seh_init.c (__gnat_map_SEH): Fix formatting.
386 (_gnat_SEH_error_handler): Adjust comments.
387 (__gnat_install_SEH_handler): Fix formatting.
388
b6784d90
HK
3892018-05-24 Hristian Kirtchev <kirtchev@adacore.com>
390
391 * exp_ch7.adb, sem_ch3.adb, sem_res.adb: Minor reformatting.
392
861e589e
ES
3932018-05-24 Ed Schonberg <schonberg@adacore.com>
394
395 * exp_aggr.adb (Flatten): Add a warning on an others clause in an array
396 aggregate with static bounds when named associations cover all index
397 positions and the others clause is redundant.
398
0347c01b
RA
3992018-05-24 Raphael Amiard <amiard@adacore.com>
400
401 * libgnat/a-cohama.ads: Add documentation.
402
8f1b88f8
RA
4032018-05-24 Raphael Amiard <amiard@adacore.com>
404
405 * libgnat/a-convec.ads: Add documentation.
406
c06a59be
JS
4072018-05-24 Justin Squirek <squirek@adacore.com>
408
409 * exp_ch3.adb (Expand_N_Object_Declaration): Ignore raising an error in
410 expansion for limited tagged types when the node to be expanded is a
411 raise expression due to it not representing a valid object.
412 * exp_ch5.adb (Expand_N_Assignment_Statement): Add exception to error
413 message regarding assignments to limited types to ignore genereated
414 code.
415
fa3717c1
HK
4162018-05-24 Hristian Kirtchev <kirtchev@adacore.com>
417
418 * exp_util.adb (New_Class_Wide_Subtype): Capture and restore relevant
419 Ghost-related attributes of the class-wide subtype because the copy
420 clobbers them.
421
36e7d49f
JS
4222018-05-24 Justin Squirek <squirek@adacore.com>
423
424 * sem_res.adb (Resolve_Entity_Name): Add guard to protect against
425 marking use clauses as effective when the reference appears within
426 generated code.
427
37a104ea
CC
4282018-05-24 Cyrille Comar <comar@adacore.com>
429
430 * doc/gnat_rm/the_gnat_library.rst: Fix typos.
431 * gnat_rm.texi: Regenerate.
432
9a975bfc
BD
4332018-05-24 Bob Duff <duff@adacore.com>
434
435 * exp_ch7.adb (Expand_Cleanup_Actions): Create a mark unconditionally
436 for build-in-place functions with a caller-unknown-size result.
437 (Create_Finalizer): For build-in-place functions with a
438 caller-unknown-size result, check at run time whether we need to
439 release the secondary stack.
440
d2bb0bbf
HK
4412018-05-24 Hristian Kirtchev <kirtchev@adacore.com>
442
443 * sem_prag.adb (Analyze_Pragma): Use the full view of an internally
444 generated incomplete type.
445
9057bd6a
HK
4462018-05-24 Hristian Kirtchev <kirtchev@adacore.com>
447
448 * expander.adb (Expand): Update the save and restore of the Ghost
449 region.
450 * exp_ch3.adb (Freeze_Type): Likewise.
451 * exp_disp.adb (Make_DT): Likewise.
452 * exp_util.adb (Build_DIC_Procedure_Body): Likewise.
453 (Build_DIC_Procedure_Declaration): Likewise.
454 (Build_Invariant_Procedure_Body): Likewise.
455 (Build_Invariant_Procedure_Declaration): Likewise.
456 (Make_Predicate_Call): Likewise.
457 * freeze.adb (Add_To_Result): Insert the freeze action of a living
458 entity prior to the start of the enclosing ignored Ghost region.
459 (Freeze_Entity): Update the save and restore of the Ghost region.
460 * ghost.adb (Install_Ghost_Mode): Reimplemented.
461 (Install_Ghost_Region): New routine.
462 (Mark_And_Set_Ghost_Assignment): Install a region rather than a mode.
463 (Mark_And_Set_Ghost_Body): Likewise.
464 (Mark_And_Set_Ghost_Completion): Likewise.
465 (Mark_And_Set_Ghost_Declaration): Likewise.
466 (Mark_And_Set_Ghost_Instantiation): Likewise.
467 (Mark_And_Set_Ghost_Procedure_Call): Likewise.
468 (Name_To_Ghost_Mode): New routine.
469 (Restore_Ghost_Region): New routine.
470 * ghost.ads (Install_Ghost_Region): New routine.
471 (Restore_Ghost_Region): New routine.
472 * opt.ads: Add new global variable Ignored_Ghost_Region.
473 * rtsfind.adb (Load_RTU): Update the save and restore of the Ghost
474 region. Install a clean region.
475 * sem.adb (Analyze): Likewise.
476 (Do_Analyze): Likewise.
477 * sem_ch3.adb (Analyze_Object_Declaration): Likewise
478 (Derive_Progenitor_Subprograms): Use local variable Iface_Alias to
479 capture the ultimate alias of the current primitive.
480 (Process_Full_View): Update the save and restore of the Ghost region.
481 Do not inherit DIC and invariant procedures.
482 * sem_ch5.adb (Analyze_Assignment): Update the save and restore of the
483 Ghost region.
484 * sem_ch6.adb (Analyze_Procedure_Call): Likewise.
485 (Analyze_Subprogram_Body_Helper): Likewise.
486 * sem_ch7.adb (Analyze_Package_Body_Helper): Likewise.
487 * sem_ch12.adb (Analyze_Package_Instantiation): Likewise.
488 (Analyze_Subprogram_Instantiation): Likewise.
489 (Instantiate_Package_Body): Likewise.
490 (Instantiate_Subprogram_Body): Likewise.
491 * sem_ch13.adb (Build_Predicate_Functions): Likewise.
492 (Build_Predicate_Function_Declaration): Likewise.
493 * sem_disp.adb
494 (Add_Dispatching_Operation): Do not consider DIC and invariant
495 procedures.
496 (Check_Dispatching_Operation): Use Add_Dispatching_Operation to collect
497 a dispatching subprogram.
498 (Check_Operation_From_Private_View): Likewise.
499 (Override_Dispatching_Operation): Likewise.
500 * sem_prag.adb (Analyze_Contract_Cases_In_Decl_Part): Update the save
501 and restore of the Ghost region.
502 (Analyze_Initial_Condition_In_Decl_Part): Likewise.
503 (Analyze_Pragma): Update the save and restore of the Ghost region.
504 (Analyze_Pre_Post_Condition_In_Decl_Part): Likewise.
505 * sem_util.adb (Is_Suitable_Primitive): New routine.
506 * sem_util.ads (Is_Suitable_Primitive): New routine.
507 * sinfo.ads: Update the section of Ghost regions.
508
883ccddf
PT
5092018-05-24 Piotr Trojanek <trojanek@adacore.com>
510
511 * doc/gnat_rm/implementation_defined_pragmas.rst (Contract_Cases):
512 Change "condition" to "case guard" after renaming in the contract
513 grammar.
514 * gnat_rm.texi: Regenerate.
515
ebea257e
HK
5162018-05-24 Hristian Kirtchev <kirtchev@adacore.com>
517
518 * exp_util.adb (Expand_Static_Predicates_In_Choices): Indicate that the
519 construct with discrete choices no longer contains a subtype with
520 predicates since the expansion already handled this case.
521
d72099eb
HK
5222018-05-24 Hristian Kirtchev <kirtchev@adacore.com>
523
524 * freeze.adb (Wrap_Imported_Subprogram): Generate an unchecked
525 conversion to the return type to avoid a side effect where an imported
526 relocated function generates a new anonymous access type, whose
527 accessibility level does not agree with with that of the wrapper.
528
0b5252ac
JM
5292018-05-24 Javier Miranda <miranda@adacore.com>
530
531 * sem_util.adb (Abstract_Interface_List): Add missing support for
532 private types whose full view is a synchronized type.
533 * sem_ch3.adb (Build_Derived_Private_Type): Skip building the full
534 derivation of a private type parent type is a task type with
535 discriminants as gigi does not use such type directly.
536
7dcac7d1
HK
5372018-05-24 Hristian Kirtchev <kirtchev@adacore.com>
538
539 * sem_elab.adb (Build_Variable_Reference_Marker): Do not create a
540 variable marker when the reference appears in the formal part of a
541 compilation unit instance because there is no place to insert it.
542 (In_Compilation_Instance_Formal_Part): New routine.
543
443ee956
PT
5442018-05-24 Piotr Trojanek <trojanek@adacore.com>
545
546 * layout.ads, repinfo.ads: Fix references to renamed Backend_Layout
547 configuration parameter.
548
3cac09db
DR
5492018-05-24 Doug Rupp <rupp@adacore.com>
550
551 * argv-lynxos178-raven-cert.c: New file.
552 * libgnat/system-lynxos178-x86.ads: New file.
553
162ea0d3
HK
5542018-05-23 Hristian Kirtchev <kirtchev@adacore.com>
555
556 * exp_disp.adb, freeze.adb, gnat1drv.adb, sem_ch5.adb, sem_spark.adb:
557 Minor reformattings.
558
cd742f4a
PO
5592018-05-23 Pascal Obry <obry@adacore.com>
560
561 * adaint.c (win32_wait): Properly free the handle/pid lists when
562 WaitForMultipleObjects fails (return WAIT_FAILED).
563
c2d2963d
PO
5642018-05-23 Pascal Obry <obry@adacore.com>
565
566 * adaint.c (win32_wait): Add missing parentheses.
567
7f4b58c2
HK
5682018-05-23 Hristian Kirtchev <kirtchev@adacore.com>
569
570 * exp_ch3.adb (Check_Large_Modular_Array): Moved to Freeze.
571 (Expand_N_Object_Declaration): Do not check for a large modular array
572 here.
573 * freeze.adb (Check_Large_Modular_Array): Moved from Exp_Ch3.
574 (Freeze_Object_Declaration): Code cleanup. Check for a large modular
575 array.
576 * sem_ch3.adb: Minor reformatting.
577
ffdd5248
ES
5782018-05-23 Ed Schonberg <schonberg@adacore.com>
579
580 * einfo.ads: New attribute on types: Predicated_Parent, to simplify the
581 retrieval of the applicable predicate function to an itype created for
582 a constrained array component.
583 * einfo.adb: Subprograms for Predicated_Parent.
584 (Predicate_Function): Use new attribute.
585 * exp_util.adb (Make_Predicate_Call): If the predicate function is not
586 available for a subtype, retrieve it from the base type, which may have
587 been frozen after the subtype declaration and not captured by the
588 subtype declaration.
589 * sem_aggr.adb (Resolve_Array_Aggregate): An Others association is
590 legal within a generated initiqlization procedure, as may happen with a
591 predicate check on a component, when the predicate function applies to
592 the base type of the component.
593 * sem_ch3.adb (Analyze_Subtype_Declaration): Clean up inheritance of
594 predicates for subtype declarations and for subtype indications in
595 other contexts.
596 (Process_Subtype): Likewise. Handle properly the case of a private type
597 with unknown discriminants whose full view is an unconstrained array.
598 Use Predicated_Parent to indicate source of predicate function on an
599 itype whose parent is itself an itype.
600 (Complete_Private_Subtype): If the private view has unknown
601 discriminants and the full view is an unconstrained array, set base
602 type of completion to the full view of parent.
603 (Inherit_Predicate_Flags): Prevent double assignment of predicate
604 function and flags.
605 (Build_Subtype): For a constrained array component, propagate predicate
606 information from original component type declaration.
607
39a4daf9
BY
6082018-05-23 Boris Yakobowski <yakobowski@adacore.com>
609
610 * libgnat/a-ngelfu.ads (Arctanh, Arccoth): Fix faulty preconditions.
611
bc3fb397
AC
6122018-05-23 Arnaud Charlet <charlet@adacore.com>
613
614 * checks.adb (Minimize_Eliminate_Overflows): Default initialize Lo and
615 Hi.
616 * sem_elab.adb: Make "out" parameters instead of "in out" when
617 relevant.
618
b77c24b8
BD
6192018-05-23 Bob Duff <duff@adacore.com>
620
621 * gnatbind.adb (List_Applicable_Restrictions): Add
622 No_Implementation_Restrictions to the list of restrictions not to list.
623 Remove double negative "not No_Restriction_List". Comment the
624 commentary that is output, so it won't cause errors if used directly in
625 a gnat.adc.
626
b30f86de
ES
6272018-05-23 Ed Schonberg <schonberg@adacore.com>
628
629 * sem_prag.adb (Inherit_Class_Wide_Pre): Refine legality check on
630 class-wide precondition on a type extension when ancestor does not have
631 a class-wide precondition. Previously the compiler accepted such a
632 precondition when the ancestor had a class-wide postcondition.
633
026733d8
JM
6342018-05-23 Javier Miranda <miranda@adacore.com>
635
636 * sem_attr.adb (Valid_Scalars): Do not invoke Error_Attr_P to report
637 the warning on occurrences of this attribute whose evaluation is always
638 true (since that subprogram aborts processing the attribute). In
639 addition, replace the node by its boolean result 'True' (required
640 because the backend has no knowledge of this attribute).
641
aeaa0347
BD
6422018-05-23 Bob Duff <duff@adacore.com>
643
644 * libgnat/a-convec.adb: (Insert, Insert_Space): Suppress warnings. The
645 code in question is not reachable in the case where Count_Type'Last is
646 out of range.
647
5e1c231e
YM
6482018-05-23 Yannick Moy <moy@adacore.com>
649
650 * doc/gnat_rm/implementation_defined_pragmas.rst: Clarify meaning of
651 local pragma Warnings Off without On.
652 * gnat_rm.texi: Regenerate.
653
b682fcf0
OH
6542018-05-23 Olivier Hainque <hainque@adacore.com>
655
656 * libgnat/g-excact.ads (Is_Foreign_Exception): New predicate.
657 * libgnat/g-excact.adb: Implement.
658
ac450fb2
ES
6592018-05-23 Ed Schonberg <schonberg@adacore.com>
660
661 * sem_ch5.adb (Analyze_Iterator_Specification): If a subtype indication
662 is present, verify its legality when the domain of iteration is a
663 GNAT-specific formal container, as is already done for arrays and
664 predefined containers.
665
fd82aeff
YM
6662018-05-23 Yannick Moy <moy@adacore.com>
667
668 * sem_util.adb (Enclosing_Declaration): Fix the case of a named number
669 declaration, which was not taken into account.
670
0c9849e1
HK
6712018-05-23 Hristian Kirtchev <kirtchev@adacore.com>
672
673 * debug.adb: Switch -gnatd_s is now used to stop elaboration checks on
674 synchronized suspension.
675 * rtsfind.ads: Add entries for units Ada.Synchronous_Barriers and
676 Ada.Synchronous_Task_Control and routines Suspend_Until_True and
677 Wait_For_Release.
678 * sem_elab.adb: Document switch -gnatd_s.
679 (In_Task_Body): New routine.
680 (Is_Potential_Scenario): Code cleanup. Stop the traversal of a task
681 body when the current construct denotes a synchronous suspension call,
682 and restriction No_Entry_Calls_In_Elaboration_Code or switch -gnatd_s
683 is in effect.
684 (Is_Synchronous_Suspension_Call): New routine.
685 * switch-c.adb (Scan_Front_End_Switches): Switch -gnatJ now sets switch
686 -gnatd_s.
687
51ab2a39
JM
6882018-05-23 Javier Miranda <miranda@adacore.com>
689
690 * exp_disp.adb (Make_DT): Restrict the initialization of
691 External_Tag and Expanded_Name to an empty string to the case where
692 both pragmas apply (i.e. No_Tagged_Streams and Discard_Names), since
693 restricted runtimes are compiled with pragma Discard_Names.
694 * doc/gnat_rm/implementation_defined_pragmas.rst,
695 doc/gnat_rm/implementation_defined_characteristics.rst: Add
696 documentation.
697 * gnat_rm.texi: Regenerate.
698
6734617c
MM
6992018-05-23 Maroua Maalej <maalej@adacore.com>
700
701 * sem_spark.adb: Fix of some permission rules of pointers in SPARK.
702
a0fa5497
ES
7032018-05-23 Ed Schonberg <schonberg@adacore.com>
704
705 * sem_ch5.adb (Preanalyze_Range): The pre-analysis of the domain of
706 iteration of an Ada2012 loop is performed to determine the type of the
707 domain, but full analysis is performed once the loop is rewritten as a
708 while-loop during expansion. The pre-analysis suppresses expansion; it
709 must also suppress the generation of freeze nodes, which may otherwise
710 appear in the wrong scope before rewritting.
711
a0f3668c
HK
7122018-05-23 Hristian Kirtchev <kirtchev@adacore.com>
713
714 * sem_elab.adb: Update the section on suppressing elaboration warnings.
715
48688534
HK
7162018-05-23 Hristian Kirtchev <kirtchev@adacore.com>
717
718 * einfo.adb (Is_Elaboration_Checks_OK_Id): Use predicate
719 Is_Elaboration_Target.
720 (Is_Elaboration_Target): New routine.
721 (Is_Elaboration_Warnings_OK_Id): Use predicate Is_Elaboration_Target.
722 (Set_Is_Elaboration_Checks_OK_Id): Use predicate Is_Elaboration_Target.
723 (Set_Is_Elaboration_Warnings_OK_Id): Use predicate
724 Is_Elaboration_Target.
725 * einfo.ads: Add new synthesized attribute Is_Elaboration_Target along
726 with occurrences in nodes.
727 (Is_Elaboration_Target): New routine.
728 * sem_prag.adb (Analyze_Pragma): Suppress elaboration warnings when an
729 elaboration target is subject to pragma Warnings (Off, ...).
730
6e6e00ff
EB
7312018-05-23 Eric Botcazou <ebotcazou@adacore.com>
732
733 * repinfo.adb (List_Type_Info): Remove obsolete stuff.
734
162ed06f
HK
7352018-05-23 Hristian Kirtchev <kirtchev@adacore.com>
736
737 * einfo.adb: Flag304 is now Is_Elaboration_Warnings_OK_Id.
738 (Is_Elaboration_Warnings_OK_Id): New routine.
739 (Set_Is_Elaboration_Warnings_OK_Id): New routine.
740 (Write_Entity_Flags): Output Flag304.
741 * einfo.ads: Add new attribute Is_Elaboration_Warnings_OK_Id along with
742 occurrences in entities.
743 (Is_Elaboration_Warnings_OK_Id): New routine along with pragma Inline.
744 (Set_Is_Elaboration_Warnings_OK_Id): New routine along with pragma
745 Inline.
746 * sem_attr.adb (Analyze_Access_Attribute): Capture the state of
747 elaboration warnings.
748 * sem_ch3.adb (Analyze_Object_Declaration): Capture the state of
749 elaboration warnings.
750 * sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): Capture the
751 state of elaboration warnings.
752 (Analyze_Subprogram_Body_Helper): Capture the state of elaboration
753 warnings.
754 (Analyze_Subprogram_Declaration): Capture the state of elaboration
755 warnings.
756 * sem_ch9.adb (Analyze_Entry_Declaration): Capture the state of
757 elaboration warnings.
758 (Analyze_Single_Task_Declaration): Capture the state of elaboration
759 warnings.
760 (Analyze_Task_Type_Declaration): Capture the state of elaboration
761 warnings.
762 * sem_ch12.adb (Analyze_Generic_Package_Declaration): Capture the state
763 of elaboration warnings.
764 (Analyze_Generic_Subprogram_Declaration): Capture the state of
765 elaboration warnings.
766 * sem_elab.adb: Add a section on suppressing elaboration warnings.
767 Type Processing_Attributes includes component Suppress_Warnings
768 intended to suppress any elaboration warnings along a path in the
769 graph. Update Initial_State to include a value for this component.
770 Types Target_Attributes and Task_Attriutes include component
771 Elab_Warnings_OK to indicate whether the target or task has elaboration
772 warnings enabled. component Elab_Warnings_OK.
773 (Build_Access_Marker): Propagate attribute
774 Is_Elaboration_Warnings_OK_Node from the attribute to the generated
775 call marker.
776 (Extract_Instantiation_Attributes): Set the value for Elab_Warnings_OK.
777 (Extract_Target_Attributes): Set the value for Elab_Warnings_OK.
778 (Extract_Task_Attributes): Set the value for Elab_Warnings_OK.
779 (Process_Conditional_ABE_Access): Suppress futher elaboration warnings
780 when already in this mode or when the attribute or target have warnings
781 suppressed.
782 (Process_Conditional_ABE_Activation_Impl): Do not emit any diagnostics
783 if warnings are suppressed.
784 (Process_Conditional_ABE_Call): Suppress further elaboration warnings
785 when already in this mode, or the target or call have warnings
786 suppressed.
787 (Process_Conditional_ABE_Call_Ada): Do not emit any diagnostics if
788 warnings are suppressed.
789 (Process_Conditional_ABE_Call_SPARK): Do not emit any diagnostics if
790 warnings are suppressed.
791 (Process_Conditional_ABE_Instantiation): Suppress further elaboration
792 warnings when already in this mode or when the instantiation has
793 warnings suppressed.
794 (Process_Conditional_ABE_Instantiation_Ada): Do not emit any
795 diagnostics if warnings are suppressed.
796 (Process_Conditional_ABE_Variable_Assignment_Ada): Use the more
797 specific Is_Elaboration_Warnings_OK_Id rather than Warnings_Off.
798 (Process_Conditional_ABE_Variable_Assignment_SPARK): Use the more
799 specific Is_Elaboration_Warnings_OK_Id rather than Warnings_Off.
800 (Process_Task_Object): Suppress further elaboration warnings when
801 already in this mode, or when the object, activation call, or task type
802 have warnings suppressed. Update the processing state to indicate that
803 the path goes through a task body.
804 * sinfo.adb (Is_Elaboration_Warnings_OK_Node): Accept attribute
805 references.
806 (Set_Is_Elaboration_Warnings_OK_Node): Accept attribute references.
807 * sinfo.ads: Attribute Is_Elaboration_Warnings_OK_Node now applies to
808 attribute references.
809
53b30c73
PT
8102018-05-23 Piotr Trojanek <trojanek@adacore.com>
811
812 * einfo.ads: Minor reformatting.
813
728fedc2
ES
8142018-05-23 Ed Schonberg <schonberg@adacore.com>
815
816 * sem_ch3.adb (Analyze_Object_Declaration): If expression is an
817 anonymous_access_to_ subprogram formal, apply a conversion to force an
818 accsssibility check that will fail statically, enforcing 3.10.2 (13).
819
87843c83
DM
8202018-05-23 Daniel Mercier <mercier@adacore.com>
821
822 * gnat1drv.adb: Turn off length expansion in CodePeer mode.
823
32677654
BD
8242018-05-23 Bob Duff <duff@adacore.com>
825
826 * freeze.adb: (Check_Address_Clause): Deal with build-in-place
827 aggregates in addition to build-in-place calls.
828
95872381
BD
8292018-05-23 Bob Duff <duff@adacore.com>
830
831 * einfo.ads: Minor reformatting.
832 * sem_ch3.adb: Likewise.
833 * sinfo.ads: Likewise.
834
40016fa7
HK
8352018-05-23 Hristian Kirtchev <kirtchev@adacore.com>
836
837 * exp_ch3.adb (Default_Initialize_Object): Do not optimize scalar array
838 initialization when the component type has predicates.
839 * exp_ch4.adb (Expand_N_Allocator): Do not optimize scalar array
840 allocation when the component type has predicates.
841
3d581777
HK
8422018-05-23 Hristian Kirtchev <kirtchev@adacore.com>
843
844 * einfo.adb, exp_disp.adb, sem_ch3.adb, sem_ch6.adb, sem_prag.adb:
845 Minor reformatting.
846
3f89eb7f
JS
8472018-05-22 Justin Squirek <squirek@adacore.com>
848
849 * sem_ch6.adb (Analyze_Expression_Function): Propagate flags from the
850 original function spec into the generated function spec due to
851 expansion of expression functions during analysis.
852 (Analyze_Subprogram_Body_Helper): Modify check on formal parameter
853 references from the body to the subprogram spec in the case of
854 expression functions because of inconsistances related to having a
855 generated body.
856 * libgnarl/s-osinte__android.ads: Flag parameters as unused.
857 * libgnarl/s-osinte__lynxos178e.ads: Likewise.
858 * libgnarl/s-osinte__qnx.adb: Likewise.
859 * libgnarl/s-osinte__qnx.ads: Likewise.
860
143a4acd
DR
8612018-05-22 Doug Rupp <rupp@adacore.com>
862
863 * init.c (HAVE_ADJUST_CONTEXT_FOR_RAISE): Don't define on VxWorks7 for
864 AArch64.
865
f6904af0
OH
8662018-05-22 Olivier Hainque <hainque@adacore.com>
867
868 * libgnat/a-except.adb (Exception_Propagation.Propagate_Exception):
869 Expect an Exception_Occurence object, not an Access.
870 (Complete_And_Propagate_Occurrence): Adjust accordingly.
871 (Raise_From_Signal_Handler): Likewise.
872 (Reraise_Occurrence_No_Defer): If we have a Machine_Occurrence
873 available in the provided occurrence object, just re-propagate the
874 latter as a bare "raise;" would do.
875 * libgnat/a-exexpr.adb (Propagate_Exception): Adjust to spec change.
876 * libgnat/a-exstat.adb (String_To_EO): Initialize X.Machine_Occurrence
877 to null, to mark that the occurrence we're crafting from the stream
878 contents is not being propagated (yet).
879
02db8169
HK
8802018-05-22 Hristian Kirtchev <kirtchev@adacore.com>
881
882 * exp_aggr.adb (Initialize_Ctrl_Record_Component): Insert the generated
883 code for a transient component in line with the rest of the
884 initialization code, rather than before the aggregate. This ensures
885 that the component has proper visibility of the discriminants.
886
9820b389
JL
8872018-05-22 Jerome Lambourg <lambourg@adacore.com>
888
889 * adaint.c: Reorganize QNX-specific macros, use syspage to retreive the
890 number of CPUs.
891
817659c5
JL
8922018-05-22 Jerome Lambourg <lambourg@adacore.com>
893
894 * sigtramp-qnx.c: Properly restore link register in signal trampoline.
895
529749b9
HK
8962018-05-22 Hristian Kirtchev <kirtchev@adacore.com>
897
898 * exp_aggr.adb (Aggr_Assignment_OK_For_Backend): Strip away any
899 conversions before extracting the value of the expression.
900 * exp_ch3.adb (Default_Initialize_Object): Optimize the default
901 initialization of an array of scalars.
902 (Get_Simple_Init_Val): Add processing for array types. Remove the
903 processing of strings because this case is already handled by the array
904 case.
905 (Needs_Simple_Initialization): Moved to Sem_Util.
906 (Simple_Init_Array_Type): New routine.
907 (Simple_Init_Initialize_Scalars_Type): Reimplemented to use the new
908 facilities from Sem_Util.
909 (Simple_Initialization_OK): New routine.
910 * exp_ch3.ads (Needs_Simple_Initialization): Moved to Sem_Util.
911 * exp_ch4.adb (Expand_N_Allocator): Optimize the default allocation of
912 an array of scalars.
913 * sem_prag.adb (Analyze_Float_Value): New routine.
914 (Analyze_Integer_Value): New routine.
915 (Analyze_Pragma): Reimplement the analysis of pragma Initialize_Scalars
916 to handled the extended form of the pragma.
917 (Analyze_Type_Value_Pair): New routine.
918 * sem_util.adb: Add invalid value-related data structures.
919 (Examine_Array_Bounds): New routine.
920 (Has_Static_Array_Bounds): Reimplemented.
921 (Has_Static_Non_Empty_Array_Bounds): New routine.
922 (Invalid_Scalar_Value): New routine.
923 (Needs_Simple_Initialization): Moved from Exp_Ch3.
924 (Set_Invalid_Scalar_Value): New routines.
925 * sem_util.ads (Has_Static_Non_Empty_Array_Bounds): New routine.
926 (Invalid_Scalar_Value): New routine.
927 (Needs_Simple_Initialization): Moved from Exp_Ch3.
928 (Set_Invalid_Scalar_Value): New routines.
929 * snames.ads-tmpl: Add names for the salar type families used by pragma
930 Initialize_Scalars.
931
b00baef5
JM
9322018-05-22 Javier Miranda <miranda@adacore.com>
933
934 * exp_disp.adb (Make_DT): Initialize the External_Tag with an empty
935 string when pragma No_Tagged_Streams is applicable to the tagged type,
936 and initialize the Expanded_Name with an empty string when pragma
937 Discard_Names is applicable to the tagged type.
938
90fa8613
ES
9392018-05-22 Ed Schonberg <schonberg@adacore.com>
940
941 * sem_ch6.adb (Check_Conformance): Add RM reference for rule that a
942 formal subprogram is never subtype conformqnt, and thus cannot be the
943 prefix of 'Access. Reject as well the attribute when applied to a
944 renaming of a formal subprogram.
945
3b26fe82
HK
9462018-05-22 Hristian Kirtchev <kirtchev@adacore.com>
947
948 * exp_ch3.adb (Build_Array_Init_Proc): Update the call to
949 Needs_Simple_Initialization.
950 (Build_Init_Statements): Update the call to Get_Simple_Init_Val.
951 (Check_Subtype_Bounds): Renamed to Extract_Subtype_Bounds. Update the
952 profile and comment on usage.
953 (Default_Initialize_Object): Do not use New_Copy_Tree to set the proper
954 Sloc of a value obtained from aspect Default_Value because this could
955 potentially replicate large trees. The proper Sloc is now set in
956 Get_Simple_Init_Val.
957 (Get_Simple_Init_Val): Reorganized by breaking the various cases into
958 separate routines. Eliminate the use of global variables.
959 (Init_Component): Update the call to Get_Simple_Init_Val.
960 (Needs_Simple_Initialization): Update the parameter profile and all
961 uses of T.
962 (Simple_Init_Defaulted_Type): Copy the value of aspect Default_Value
963 and set the proper Sloc.
964 * exp_ch3.ads (Get_Simple_Init_Val): Update the parameter profile and
965 comment on usage.
966 (Needs_Simple_Initialization): Update the parameter profile.
967
59ec5d9b
PB
9682018-05-22 Patrick Bernardi <bernardi@adacore.com>
969
970 * sem_ch3.adb (Build_Discriminant_Constraints): Raise an error if the
971 user tries to use a subtype indication as a discriminant constraint.
972
801b4022
ES
9732018-05-22 Ed Schonberg <schonberg@adacore.com>
974
975 * exp_ch4.ads, exp_ch4.adb, exp_util.adb, expander.adb: Remove mention
976 of N_Reduction_Expression and N_Reduction_Expression_Parameter.
977 * par-ch4.adb: Remove parsing routines for reduction expressions.
978 * sem.adb, sinfo.ads, sinfo.adb, sem_ch4.ads, sem_ch4.adb, sem_res.adb,
979 sem_spark.adb, sprint.adb: Remove analysis routines for reduction
980 expressions.
981
208ebca9
AC
9822018-05-22 Arnaud Charlet <charlet@adacore.com>
983
984 * sem_ch8.adb (Check_Frozen_Renaming): Do not emit error in
985 Relaxed_RM_Semantics mode.
986
b4914af8
AC
9872018-05-22 Arnaud Charlet <charlet@adacore.com>
988
989 * comperr.adb (Delete_SCIL_Files): Take into account
990 N_Generic_Package_Renaming_Declaration.
991
fbb53995
ES
9922018-05-22 Ed Schonberg <schonberg@adacore.com>
993
994 * sem_ch3.adb (Search_Derivation_Levels): Whenever a parent type is
995 private, use the full view if available, because it may include renamed
996 discriminants whose values are stored in the corresponding
997 Stored_Constraint.
998
651822ae
ES
9992018-05-22 Ed Schonberg <schonberg@adacore.com>
1000
1001 * einfo.ads, einfo.adb: New attribute Hidden_In_Formal_Instance,
1002 defined on packages that are actuals for formal packages, in order to
1003 set/reset the visibility of the formals of a formal package with given
1004 actuals, when there are subsequent uses of those formals in the
1005 enclosing generic, as required by RN 12.7 (10).
1006 * atree.ads, atree.adb: Add operations for Elist30.
1007 * atree.h: Add Elist30.
1008 * sem_ch12.adb (Analyze_Formal_Package_Instantiation): Collect formals
1009 that are not defaulted and are thus not visible within the current
1010 instance.
1011 (Check_Formal_Packages): Reset visibility of formals of a formal
1012 package that are not defaulted, on exit from current instance.
1013
41ff70d9
HK
10142018-05-22 Hristian Kirtchev <kirtchev@adacore.com>
1015
1016 * sem_prag.adb (Analyze_Input_Output): Emit an error when a non-null,
1017 non-'Result output appears in the output list of a function.
1018
f16cb8df
HK
10192018-05-22 Hristian Kirtchev <kirtchev@adacore.com>
1020
1021 * exp_attr.adb (Build_Array_VS_Func): Reimplemented.
1022 (Build_Record_VS_Func): Reimplemented.
1023 (Expand_N_Attribute): Reimplement the handling of attribute
1024 'Valid_Scalars.
1025 * sem_attr.adb (Analyze_Attribute): Reimplement the handling of
1026 attribute 'Valid_Scalars.
1027 * sem_util.adb (Scalar_Part_Present): Reimplemented.
1028 (Validated_View): New routine.
1029 * sem_util.ads (Scalar_Part_Present): Update the parameter profile and
1030 comment on usage.
1031 (Validated_View): New routine.
1032 * doc/gnat_rm/implementation_defined_attributes.rst: Update the
1033 documentation of attribute 'Valid_Scalars.
1034 * gnat_rm.texi: Regenerate.
1035
6b3035ab
BD
10362018-05-22 Bob Duff <duff@adacore.com>
1037
1038 * binde.adb: (Choose): Ignore a pragma Elaborate_Body that appears in
1039 the spec of a SAL_Interface package.
1040
85c73d63
ES
10412018-05-22 Ed Schonberg <schonberg@adacore.com>
1042
1043 * freeze.adb (Freeze_Entity): When analyzing delayed aspects of an
1044 entity E within a generic unit, indicate that there are no remaining
1045 delayed aspects after invoking Analyze_Aspects_At_Freeze_Point. The
1046 entity E is not frozen yet but the aspects should not be reanalyzed at
1047 the freeze point, which may be outside of the generic and may not have
1048 the proper visibility.
1049
71483539
BD
10502018-05-22 Bob Duff <duff@adacore.com>
1051
1052 * doc/gnat_ugn/gnat_utility_programs.rst: Add documentation for
1053 the new --split-line-before-record, --indent-named-statements and
1054 --no-align-modes gnatpp switches.
1055
531351e8
ES
10562018-05-22 Ed Schonberg <schonberg@adacore.com>
1057
1058 * sem_prag.adb (Process_Compile_Time_Warning_Or_Error): Handle properly
1059 a second argument that is a constant of a given string value.
1060
9c629d61
DR
10612018-05-22 Doug Rupp <rupp@adacore.com>
1062
1063 * sigtramp-vxworks-target.inc: Align stack to 128bits on AArch64.
1064
14141ce8
JL
10652018-05-22 Jerome Lambourg <lambourg@adacore.com>
1066
1067 * sigtramp-qnx.c: Fix stack alignment issue in the signal trampoline.
1068
f2df0100
ES
10692018-05-22 Ed Schonberg <schonberg@adacore.com>
1070
1071 * freeze.adb (Freeze_Fixed_Point_Type): If the first subtype has
1072 delayed aspects, analyze them now, os that the representation of the
1073 type (size, bounds) can be computed and validated.
1074
b8bbe739
OH
10752018-05-22 Olivier Hainque <hainque@adacore.com>
1076
1077 * libgnat/s-dwalin.adb (Enable_Cache): Skip symbols outside of the
1078 executable code section boundaries.
1079
92ea8dd2
JM
10802018-05-22 Javier Miranda <miranda@adacore.com>
1081
1082 * locales.c: New implementation for the Ada.Locales package.
1083 * libgnat/a-locale.ads: Remove comment indicating that this is not
1084 implemented.
1085 * doc/gnat_rm/standard_library_routines.rst: Remove comment indicating
1086 that this is not implemented.
1087 * gnat_rm.texi: Regenerate.
1088
e5fc0179
HK
10892018-05-22 Hristian Kirtchev <kirtchev@adacore.com>
1090
1091 * exp_ch5.adb, freeze.adb, pprint.adb, sem_ch4.adb, sem_res.adb: Minor
1092 reformattings.
1093
eaf51442
JS
10942018-05-22 Justin Squirek <squirek@adacore.com>
1095
1096 * sem_ch12.adb (In_Same_Declarative_Part): Moved to sem_util.
1097 (Freeze_Subprogram_Body, Install_Body): Modify calls to
1098 In_Same_Declarative_Part.
1099 * sem_prag.adb (Analyze_Pragma-Pragma_Pure_Function): Add check to
1100 verify pragma declaration is within the same declarative list with
1101 corresponding error message.
1102 * sem_util.adb, sem_util.ads (In_Same_Declarative_Part): Moved from
1103 sem_ch12.adb and generalized to be useful outside the scope of
1104 freezing.
1105
80f0c69c
HK
11062018-05-22 Hristian Kirtchev <kirtchev@adacore.com>
1107
1108 * sem_ch6.adb (Analyze_Subprogram_Declaration): Set the proper
1109 categorization of the unit after processing the aspects in case one of
1110 its aspects is converted into a categorization pragma.
1111
f9e9ab63
ES
11122018-05-21 Ed Schonberg <schonberg@adacore.com>
1113
1114 * freeze.adb (Warn_Overlay): Do not emit a wawrning on an object
1115 declaration with an explicit address clause and a type with default
1116 initialization, if the declaration carries an aspect
1117 Suppress_Initialization.
1118
dc3d037e 11192018-05-21 Daniel Mercier <mercier@adacore.com>
af5d8cb0
DM
1120
1121 * pprint.adb: Use mixed case for attribute names.
1122
dc3d037e 11232018-05-21 Hristian Kirtchev <kirtchev@adacore.com>
e9d08fd7
HK
1124
1125 * sem_ch6.adb (Analyze_Generic_Subprogram_Body): Rename the call to
1126 Analyze_Aspect_Specifications_On_Body_Or_Stub.
1127 (Analyze_Subprogram_Body_Helper): Rename the calls to
1128 Analyze_Aspect_Specifications_On_Body_Or_Stub.
1129 * sem_ch9.adb (Analyze_Entry_Body): Rename the call to
1130 Analyze_Aspect_Specifications_On_Body_Or_Stub.
1131 * sem_ch10.adb: Add with and use clause for Sem_Ch13.
1132 (Analyze_Package_Body_Stub): Add constant Id. Decorate the package stub
1133 prior to analyzing its aspects.
1134 (Analyze_Protected_Body_Stub): Add constant Id. Decorate the package
1135 stub prior to analyzing its aspects. Save and restore the configuration
1136 switches.
1137 (Analyze_Task_Body_Stub): Add constant Id. Decorate the package stub
1138 prior to analyzing its aspects.
1139 * sem_ch13.adb (Analyze_Aspect_Specifications_On_Body_Or_Stub): Renamed
1140 to Analyze_Aspects_On_Subprogram_Body_Or_Stub.
1141 * sem_ch13.ads (Analyze_Aspect_Specifications_On_Body_Or_Stub): Renamed
1142 to Analyze_Aspects_On_Subprogram_Body_Or_Stub.
1143 * sem_prag.adb: Code reformatting.
1144 (Analyze_Refined_Depends_Global_Post): Consider task body stubs.
1145
dc3d037e 11462018-05-21 Jerome Lambourg <lambourg@adacore.com>
f35b3e38
JL
1147
1148 * gcc-interface/Makefile.in: Add g-soliop__qnx.ads to the runtime build
1149 for QNX.
1150
dc3d037e 11512018-05-21 Hristian Kirtchev <kirtchev@adacore.com>
7a500fd7
HK
1152
1153 * exp_cg.adb: Remove with and use clause for Exp_Disp.
1154 * exp_ch9.adb: Remove with and use clause for Exp_Disp.
1155 * exp_disp.adb (Is_Predefined_Dispatching_Operation): Moved to Sem_Util.
1156 (Is_Predefined_Interface_Primitive): Moved to Sem_Util.
1157 (Is_Predefined_Internal_Operation): Moved to Sem_Util.
1158 * exp_disp.ads (Is_Predefined_Dispatching_Operation): Moved to Sem_Util.
1159 (Is_Predefined_Interface_Primitive): Moved to Sem_Util.
1160 (Is_Predefined_Internal_Operation): Moved to Sem_Util.
1161 * exp_dist.adb: Remove with and use clause for Exp_Disp.
1162 * freeze.adb: Remove with and use clause for Exp_Disp.
1163 * sem_cat.adb: Remove with and use clause for Exp_Disp.
1164 * sem_ch6.adb: Remove with and use clause for Exp_Disp.
1165 * sem_ch12.adb: Remove with and use clause for Exp_Disp.
1166 * sem_elab.adb (Check_Overriding_Primitive): Do not process predefined
1167 primitives.
1168 * sem_util.adb: Remove with and use clause for Exp_Disp.
1169 (Is_Predefined_Dispatching_Operation): Moved from Exp_Disp.
1170 (Is_Predefined_Interface_Primitive): Moved from Exp_Disp.
1171 (Is_Predefined_Internal_Operation): Moved from Exp_Disp.
1172 * sem_util.ads (Is_Predefined_Dispatching_Operation): Moved from
1173 Exp_Disp.
1174 (Is_Predefined_Interface_Primitive): Moved from Exp_Disp.
1175 (Is_Predefined_Internal_Operation): Moved from Exp_Disp.
1176
dc3d037e 11772018-05-21 Ed Schonberg <schonberg@adacore.com>
516057d3
ES
1178
1179 * sem_res.adb (Valid_Conversion): Improve error message on an illegal
1180 type conversion whose expression has a limited view of a type.
1181
def6e435
ES
11822018-05-21 Ed Schonberg <schonberg@adacore.com>
1183
1184 * exp_ch5.adb (Build_Formal_Container_Iteration): If source has
1185 explicit name for iterator loop, preserve that name in expanded
1186 construct, for possible use in exit statements.
1187
dc3d037e 11882018-05-21 Javier Miranda <miranda@adacore.com>
0d8b6803
JM
1189
1190 * sem_ch4.adb (Analyze_Membership_Op): Avoid compiler crash when the
1191 spec of a unit has Ada 2012 membership tests with multiple choices and
1192 the unit body is not compiled under Ada 2012 mode.
1193
dc3d037e 11942018-05-21 Doug Rupp <rupp@adacore.com>
92689021
DR
1195
1196 * sigtramp-vxworks-target.inc: Set cfa_reg properly from sigcontext
1197 pregs.
1198 (CFI_COMMON_REGS): Restore LR jic probed from prologue.
1199 (REGNO_PC_OFFSET): Change to correct value for Aarch64.
1200
dc3d037e 12012018-05-21 Jose Ruiz <ruiz@adacore.com>
9e40de1d
JR
1202
1203 * doc/gnat_ugn/gnat_utility_programs.rst, exp_attr.adb,
1204 libgnarl/s-tassta.adb: Minor typo fixes
1205
12390626
ES
12062018-05-21 Ed Schonberg <schonberg@adacore.com>
1207
1208 * sem_ch4.adb (Analyze_One_Call): Recognize complex cases where an
1209 indexed call originally in prefix forn is itself the prefix of a
1210 further call.
1211
dc3d037e 12122018-05-21 Piotr Trojanek <trojanek@adacore.com>
a2fcf1e0
PT
1213
1214 * sem_eval.adb (Is_Null_Range): Clarify access to the full view of a
1215 type.
1216 (Not_Null_Range): Same as above.
1217
dc3d037e 12182018-05-21 Hristian Kirtchev <kirtchev@adacore.com>
663afa9f
HK
1219
1220 * exp_ch3.adb: Minor reformatting.
1221 * exp_ch6.adb: Likewise.
1222 * freeze.adb: Likewise.
1223 * inline.adb: Likewise.
1224 * sem_util.adb: Likewise.
1225
dc3d037e 12262018-05-21 Yannick Moy <moy@adacore.com>
031936bc
YM
1227
1228 * inline.adb (Expand_Inlined_Call.Process_Formals): Use a type
1229 conversion instead of an unchecked type conversion when inlining a
1230 return statement, unless type qualification is required (for character
1231 and string literal) or no check can result from the conversion (for
1232 access types).
1233 * opt.ads: Update comment.
1234
dc3d037e 12352018-05-21 Hristian Kirtchev <kirtchev@adacore.com>
7255f3c3
HK
1236
1237 * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Install the elaboration
1238 model of the compilation unit spec, if any.
1239 * sem_ch7.adb (Analyze_Package_Body_Helper): Install the elaboration
1240 model of the compilation unit spec, if any.
1241 * sem_ch10.adb (Analyze_Subunit): Install the elaboration model of the
1242 parent compilation unit spec, if any.
1243 * sem_elab.adb (Check_Elaboration_Scenarios): Restore the elaboration
1244 model of the main unit.
1245 (Is_Same_Unit): The routine now uses Unit_Entity.
1246 (Is_Subunit): Removed.
1247 (Normalize_Unit): Removed.
1248 (Unit_Entity): New routine.
1249 * sem_prag.adb (Analyze_Pragma): Reimplement the handling of pragma
1250 Elaboration_Checks. The analysis now ensures that the pragma appears at
1251 the configuration level, and on the initial declaration of a unit.
1252 Other placements are either flagged as illegal, or ignored.
1253 (Check_Duplicate_Elaboration_Checks_Pragma): New routine.
1254 (Ignore_Elaboration_Checks_Pragma): New routine.
1255 * sem_util.adb (Install_Elaboration_Model): New routine.
1256 * sem_util.ads (Install_Elaboration_Model): New routine.
1257 * doc/gnat_rm/implementation_defined_pragmas.rst: Update the
1258 documentation of pragma Elaboration_Checks.
1259 * gnat_rm.texi: Regenerate.
1260
dc3d037e 12612018-05-21 Olivier Hainque <hainque@adacore.com>
18c7a4eb
OH
1262
1263 * libgnat/s-trasym__dwarf.adb (Executable_Name): Return argv[0] instead
1264 of empty string when argv[0] couldn't be found on PATH.
1265 (Enable_Cache): Raise Program_Error instead of attempting a null
1266 pointer dereference when the Exec_Module initialization failed.
1267
dc3d037e 12682018-05-21 Piotr Trojanek <trojanek@adacore.com>
bbb99006
PT
1269
1270 * libgnarl/a-reatim.ads (Clock_Time): Remove External aspect.
1271 * libgnarl/a-taside.ads (Tasking_State): Likewise.
1272 * libgnat/a-calend.ads (Clock_Time): Likewise.
1273
dc3d037e 12742018-05-21 Yannick Moy <moy@adacore.com>
e3822b0a
YM
1275
1276 * sem_ch6.adb (Analyze_Procedure_Call): Refine test to recognize prefix
1277 call notation in inlined call in GNATprove mode.
1278
bcc093dc
HK
12792018-05-21 Hristian Kirtchev <kirtchev@adacore.com>
1280
1281 * einfo.adb (Is_External_State): An abstract state is also external
1282 when it is declared with option "synchronous".
1283 * einfo.ads: Update the documentation of synthesized attribute
1284 Is_External_State.
1285 * sem_util.adb (Find_Simple_Properties): New routine.
1286 (Is_Enabled_External_Property): New routine.
1287 (State_Has_Enabled_Property): Reimplemented. The two flavors of option
1288 External have precedence over option Synchronous when determining
1289 whether a property is in effect.
1290
dc3d037e 12912018-05-21 Yannick Moy <moy@adacore.com>
fe44c442
YM
1292
1293 * sem_eval.adb (Static_Length): Take into account case of variable of
1294 subtype string literal.
1295
dc3d037e 12962018-05-21 Olivier Hainque <hainque@adacore.com>
c77384a4
OH
1297
1298 * libgnat/s-objrea.ads (Get_Memory_Bounds): Rename as Get_Xcode_Bounds.
1299 (Object_Section): Rename Flag_Alloc component as Flag_Xcode.
1300 * libgnat/s-objrea.adb (Get_Xcode_Bounds): Adjust to new subprogram and
1301 component name.
1302 (Get_Section, ELF case): Set Flag_Xcode from SHF_EXECINSTR.
1303 * libgnat/s-dwalin.adb (Open): Adjust to the Get_Memory_Bounds name
1304 change.
1305
dc3d037e 13062018-05-21 Olivier Hainque <hainque@adacore.com>
0f090200
OH
1307
1308 * libgnat/s-dwalin.ads (Dwarf_Context): Change type of Load_Address to
1309 Address, and type of Low, High to Storage_Offset.
1310 (Low): Rename as Low_Address and convey that the return value is a
1311 runtime reference accounting for a load address.
1312 * libgnat/s-dwalin.adb (Read_Aranges_Entry): Adjust to the
1313 address/offset type changes.
1314 (Aranges_Lookup): Likewise.
1315 (Symbolic_Address): Likewise.
1316 (Symbolic_Traceback): Likewise.
1317 (Dump_Cache): Likewise.
1318 (Is_Inside): Likewise.
1319 (Open): Likewise.
1320 (Set_Load_Address): Likewise.
1321 (Low_Address): Likewise, and account for C.Load_Address.
1322 * libgnat/s-trasym__dwarf.adb (Lt): Use Low_Address instead of Low.
1323 (Multi_Module_Symbolic_Traceback): Compare address in traceback
1324 with module Low_Address instead of Low.
1325
dc3d037e 13262018-05-21 Olivier Hainque <hainque@adacore.com>
b029cc6e
OH
1327
1328 * libgnat/s-dwalin.ads (Dwarf_Context): Rename Load_Slide as
1329 Load_Address.
1330 * libgnat/s-dwalin.adb (Is_Inside): Adjust accordingly.
1331 (Set_Load_Address): Likewise.
1332 (Symbolic_Traceback): Likewise.
1333
dc3d037e 13342018-05-21 Olivier Hainque <hainque@adacore.com>
08f8a716
OH
1335
1336 * libgnat/s-trasym__dwarf.adb (Add_Module_To_Cache): Expect a
1337 Load_Address argument and pass it down to Init_Module.
1338 * libgnat/s-tsmona__linux.adb (Build_Cache_For_All_Modules): Pass
1339 lm.l_addr as the Load_Address to Add_Module_To_Cache.
1340
dc3d037e 13412018-05-21 Piotr Trojanek <trojanek@adacore.com>
689751d2
PT
1342
1343 * einfo.adb (Has_Discriminants): Stronger assertion.
1344 (Set_Has_Discriminants): Stronger assertion.
1345 * sem_ch13.adb (Push_Scope_And_Install_Discriminants): Adapt to respect
1346 the stronger assertion on Has_Discriminant.
1347 (Uninstall_Discriminants_And_Pop_Scope): Same as above.
1348 * sem_util.adb (New_Copy_Tree): Same as above.
1349 * sem_ch7.adb (Generate_Parent_References): Prevent calls to
1350 Has_Discriminant on non-type entities that might happen when the
1351 compiled code has errors.
1352 * sem_ch3.adb (Derived_Type_Declaration): Only call
1353 Set_Has_Discriminant on type entities.
1354
dc3d037e 13552018-05-21 Arnaud Charlet <charlet@adacore.com>
3ae9d953
AC
1356
1357 * exp_unst.adb (Unnest_Subprogram): Unnest all subprograms relevant for
1358 code generation.
1359
dc3d037e 13602018-05-21 Piotr Trojanek <trojanek@adacore.com>
0c06611c
PT
1361
1362 * lib.ads: Fix typo in enumeration in comment.
1363
dc3d037e 13642018-05-21 Ed Schonberg <schonberg@adacore.com>
8b55e70d
ES
1365
1366 * sem_attr.adb (Analyze_Attribute, case Scalar_Storage_Order): The
1367 attribute reference is legal within a generic unit when the prefix is a
1368 formal private type.
1369
dc3d037e 13702018-05-21 Hristian Kirtchev <kirtchev@adacore.com>
66c0fa2c
HK
1371
1372 * exp_ch7.adb (Establish_Transient_Scope): Code cleanup. Do not
1373 delegate the secondary stack management when there is no suitable
1374 transient context, and the transient scope was intended to manage the
1375 secondary stack because this causes premature reclamation. Change the
1376 transient scope creation logic by special casing assignment statements
1377 of controlled components for type initialization procedures.
1378 (Find_Node_To_Be_Wrapped): Renamed to Find_Transient_Context. Update
1379 the comment on usage.
1380 (Find_Transient_Context): Change the initinte loop into a while loop.
1381 Iterations schemes and iterator specifications are not valid transient
1382 contexts because they rely on special processing. Assignment statements
1383 are now treated as a normal transient context, special cases are
1384 handled by the caller. Add special processing for pragma Check.
1385 (Is_OK_Construct): Removed. Its functionality has been merged in
1386 routine Find_Transient_Context.
1387 * sem_ch5.adb (Check_Call): Reimplemented. Add code to properly
1388 retrieve the subprogram being invoked. Use a more accurate predicate
1389 (Requires_Transient_Scope) to determine that the function will emply
1390 the secondary stack.
1391
dc3d037e 13922018-05-21 Piotr Trojanek <trojanek@adacore.com>
8016e567
PT
1393
1394 * ada_get_targ.adb: Fix subprogram body headers.
1395 * adabkend.adb: Likewise.
1396 * checks.adb: Likewise.
1397 * exp_ch3.adb: Likewise.
1398 * exp_ch5.adb: Likewise.
1399 * exp_ch9.adb: Likewise.
1400 * exp_dist.adb: Likewise.
1401 * exp_tss.adb: Likewise.
1402 * inline.adb: Likewise.
1403 * lib-writ.adb: Likewise.
1404 * lib-xref-spark_specific.adb: Likewise.
1405 * libgnarl/s-osinte__darwin.adb: Likewise.
1406 * libgnarl/s-stusta.adb: Likewise.
1407 * libgnarl/s-taprop__solaris.adb: Likewise.
1408 * libgnarl/s-tposen.adb: Likewise.
1409 * libgnarl/s-vxwext__kernel-smp.adb: Likewise.
1410 * libgnarl/s-vxwext__kernel.adb: Likewise.
1411 * libgnat/a-btgbso.adb: Likewise.
1412 * libgnat/a-cfdlli.adb: Likewise.
1413 * libgnat/a-cfhama.adb: Likewise.
1414 * libgnat/a-cfinve.adb: Likewise.
1415 * libgnat/a-cimutr.adb: Likewise.
1416 * libgnat/a-coboho.adb: Likewise.
1417 * libgnat/a-cofove.adb: Likewise.
1418 * libgnat/a-cofuve.adb: Likewise.
1419 * libgnat/a-comutr.adb: Likewise.
1420 * libgnat/a-exexda.adb: Likewise.
1421 * libgnat/a-tags.adb: Likewise.
1422 * libgnat/a-tideau.adb: Likewise.
1423 * libgnat/a-wtdeau.adb: Likewise.
1424 * libgnat/a-ztdeau.adb: Likewise.
1425 * libgnat/g-alleve.adb: Likewise.
1426 * libgnat/s-excdeb.adb: Likewise.
1427 * libgnat/s-parint.adb: Likewise.
1428 * libgnat/s-shasto.adb: Likewise.
1429 * libgnat/s-traceb__hpux.adb: Likewise.
1430 * prepcomp.adb: Likewise.
1431 * sem_ch4.adb: Likewise.
1432 * sem_ch6.adb: Likewise.
1433 * sem_dist.adb: Likewise.
1434 * sem_prag.adb: Likewise.
1435 * sem_util.adb: Likewise.
1436 * sinfo.adb: Likewise.
1437 * switch.adb: Likewise.
1438
5759c56d
JM
14392018-05-04 John Marino <gnugcc@marino.st>
1440
1441 PR ada/85635
1442 * link.c (BSD platforms): Add missing backslash.
1443
9f47a64f
EB
14442018-04-27 Eric Botcazou <ebotcazou@adacore.com>
1445
1446 PR ada/85540
1447 * init.c (__gnat_handle_vms_condition): Add missing parentheses.
1448
87ed4159
EB
14492018-04-25 Eric Botcazou <ebotcazou@adacore.com>
1450
1451 PR ada/85007
1452 * gnat_ugn.texi: Regenerate.
1453
bd1643cc
EB
14542018-03-23 Eric Botcazou <ebotcazou@adacore.com>
1455
1456 PR ada/85007
1457 * gnatlink.adb (Gnatlink): Remove handling of -b switch.
1458 * doc/gnat_ugn/building_executable_programs_with_gnat.rst (gnatlink):
1459 Remove documentation of -b switch.
1460
f8e56962
EB
14612018-03-23 Eric Botcazou <ebotcazou@adacore.com>
1462
1463 PR ada/85036
1464 * gnatlink.adb (Process_Args): Drop existing link switches if multiple
1465 switches are passed for --LINK.
1466
50536fd5
EB
14672018-03-12 Eric Botcazou <ebotcazou@adacore.com>
1468
1469 PR ada/82813
1470 * gcc-interface/misc.c (gnat_post_options): Disable string overflow
1471 warnings.
1472
f1bc6414
EB
14732018-03-10 Eric Botcazou <ebotcazou@adacore.com>
1474
1475 * gcc-interface/trans.c (node_has_volatile_full_access) <N_Identifier>:
1476 Consider only entities for objects.
1477
6cde8c54
SH
14782018-03-07 Sebastian Huber <sebastian.huber@embedded-brains.de>
1479
1480 * gcc-interface/Makefile.in (OSCONS_CPP): Remove redundant
1481 $(GNATLIBCFLAGS).
1482 (OSCONS_EXTRACT): Add $(GNATLIBCFLAGS_FOR_C).
1483
21288963
EB
14842018-03-06 Eric Botcazou <ebotcazou@adacore.com>
1485
1486 * gcc-interface/trans.c (convert_with_check): Fix typo in the condition
1487 guarding the overflow check emitted for the upper bound of a floating-
1488 point conversion.
1489
0d6091d9
EB
14902018-03-06 Eric Botcazou <ebotcazou@adacore.com>
1491
1492 * gcc-interface/utils.c (def_builtin_1): Bail out on error_mark_node.
1493
c6db43fa
EB
14942018-02-28 Eric Botcazou <ebotcazou@adacore.com>
1495
1496 * libgnat/i-cexten.ads (Float_128): New type.
1497
dacdc68f
EB
14982018-02-02 Eric Botcazou <ebotcazou@adacore.com>
1499
1500 * gcc-interface/decl.c (array_type_has_nonaliased_component): Return
1501 false if the component type is a pointer.
1502
fab58852
GD
15032018-01-11 Gary Dismukes <dismukes@adacore.com>
1504
1505 * exp_ch3.adb (Default_Initialize_Object): Call New_Copy_Tree on the
1506 result of Get_Simple_Init_Value and pass the source location of the
1507 object declaration's object_definition.
1508
a2dbe7d5
ES
15092018-01-11 Ed Schonberg <schonberg@adacore.com>
1510
1511 * exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration): Handle
1512 properly object declarations with initializations that are
1513 build-in-place function calls, when there is an address specification,
1514 either as an aspect specification or an explicit attribute
1515 specification clause, for the initialized object.
1516 * freeze.adb (Check_Address_Clause): Do not remove side-effects from
1517 initial expressions in the case of a build-in-place call.
1518
791f2d03
PT
15192018-01-11 Piotr Trojanek <trojanek@adacore.com>
1520
1521 * sem_eval.adb (Is_Null_Range): Retrieve the full view when called on a
1522 private (sub)type; refactor to avoid early return statement.
1523 (Not_Null_Range): Same as above.
1524
a85dbeec
HK
15252018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
1526
1527 * freeze.adb (Freeze_Entity): Ensure that a Ghost type is not
1528 concurrent, nor effectively volatile.
1529 * ghost.adb (Check_Ghost_Type): New routine.
1530 * ghost.ads (Check_Ghost_Type): New routine.
1531 * sem_util.adb (Is_Declaration): Reimplemented. The routine can now
1532 consider specific subsets of declarations.
1533 (Is_Declaration_Other_Than_Renaming): Removed. Its functionality is
1534 replicated by Is_Declaration.
1535 * sem_util.ads (Is_Declaration): New parameter profile. Update the
1536 comment on usage.
1537 (Is_Declaration_Other_Than_Renaming): Removed.
1538
5efc1c00
HK
15392018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
1540
1541 * sem_ch5.adb (Analyze_Assignment): Assignments to variables that act
1542 as Part_Of consituents of single protected types are illegal when they
1543 take place inside a protected function.
1544 (Diagnose_Non_Variable_Lhs): Use Within_Function to check for an
1545 enclosing function.
1546 (Is_Protected_Part_Of_Constituent): New routine.
1547 (Within_Function): New routine.
1548
4dfba737
AC
15492018-01-11 Arnaud Charlet <charlet@adacore.com>
1550
1551 Bump copyright notices to 2018.
1552
27d357ca
HK
15532018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
1554
1555 * binde.adb, par-ch6.adb, par-ch9.adb, sem_ch12.adb, sem_ch13.adb:
1556 Minor reformatting.
1557
cb488118
JS
15582018-01-11 Justin Squirek <squirek@adacore.com>
1559
1560 * par-ch6.adb (Scan_Body_Or_Expression_Function): Add additional check
1561 to make sure a given expression function is properly parenthesized.
1562
ed27b86b
HK
15632018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
1564
1565 * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Check the
1566 categorization of a subprogram body which does not complete a previous
1567 declaration.
1568
715a5d51
HK
15692018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
1570
1571 * sem_ch10.adb (Check_Private_Child_Unit): Ensure that the enclosing
1572 scope of package Ada is Standard.
1573
a2fd4f0e
ES
15742018-01-11 Ed Schonberg <schonberg@adacore.com>
1575
1576 * sem_ch13.adb (Replace_Type_Ref): Handle properly reference to a
1577 subcomponent of the current entity when building the body for a dynamic
1578 predicate function for a record with composite subcomponents.
1579
6560f851
HK
15802018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
1581
1582 * exp_aggr.adb (Convert_Aggr_In_Object_Decl): Update the call to
1583 Establish_Transient_Scope.
1584 (Convert_To_Assignments): Update the call to Establish_Transient_Scope.
1585 (Expand_Array_Aggregate): Update the call to Establish_Transient_Scope.
1586 * exp_ch6.adb (Expand_Call_Helper): Update the call to
1587 Establish_Transient_Scope.
1588 (Make_Build_In_Place_Call_In_Object_Declaration): Update the call to
1589 Establish_Transient_Scope.
1590 * exp_ch7.adb (Establish_Transient_Scope): Restructured. Delegate the
1591 management of the secondary stack to an enclosing scope if there is no
1592 suitable construct to wrap, and the transient scope was intended to
1593 manage the secondary stack.
1594 (Find_Node_To_Be_Wrapped): Restructured. A case_statement_alternative
1595 is a valid boundary for a transient expression which comes from the
1596 statements of the alternative, otherwise alternatives cannot be
1597 wrapped. Assignments of controlled objects which have controlled
1598 actions suppressed now stop the traversal as there is no point in
1599 looking for an enclosing construct. Add several N_xxx_Body choices to
1600 the termination conditions for completeness.
1601 * exp_ch7.ads (Establish_Transient_Scope): Update the parameter profile
1602 and the associated comment on usage.
1603 * exp_smem.adb (Add_Shared_Var_Lock_Procs): Update the call to
1604 Establish_Transient_Scope.
1605 (Add_Write_After): Update the call to Establish_Transient_Scope.
1606 * sem_res.adb (Check_Initialization_Call): Removed.
1607 (Resolve_Actuals): Account for additional cases where finalization
1608 actions are required by utilizing predicate Needs_Finalization rather
1609 than Is_Controlled.
1610 (Resolve_Call): Type initialization procedures can now utilize
1611 transient scopes to manage the secondary stack, thus preventing leaks
1612 during initialization. Remove the previous kludgy algorithm which
1613 attempts to manage the secondary stack at the object creation site.
1614
c9e80306
JL
16152018-01-11 Jerome Lambourg <lambourg@adacore.com>
1616
1617 * libgnat/g-soliop__qnx.ads: New.
1618 * adaint.c, adaint.h, cstreams.c, s-oscons-tmplt.c, sysdep.c: Update
1619 for QNX.
1620
4727f693
BD
16212018-01-11 Bob Duff <duff@adacore.com>
1622
1623 * par-ch9.adb (P_Protected_Operation_Declaration_Opt): Give an error if
1624 a null procedure occurs in a protected definition.
1625
1ceee6a1
BD
16262018-01-11 Bob Duff <duff@adacore.com>
1627
1628 * binderr.ads, namet.ads: Minor reformatting.
1629
e22e7f06
BD
16302018-01-11 Bob Duff <duff@adacore.com>
1631
1632 * doc/gnat_ugn/gnat_utility_programs.rst: Improve documentation of
1633 xml2gnat.
1634
8207dc23
BD
16352018-01-11 Bob Duff <duff@adacore.com>
1636
1637 * binde.adb (Force_Elab_Order): Give an error if there are duplicate
1638 unit names.
1639
52c5090a
ES
16402018-01-11 Ed Schonberg <schonberg@adacore.com>
1641
1642 * sem_ch6.adb (Freeze_Expr_Types): If an access value is the
1643 controlling argument of a dispatching call. freeze the corresponding
1644 designated type.
1645
2e01b698
BB
16462018-01-11 Ben Brosgol <brosgol@adacore.com>
1647
1648 * doc/Makefile: Add Sphinx option -W to treat warnings as errors.
1649
f5c31a46
BB
16502018-01-11 Ben Brosgol <brosgol@adacore.com>
1651
1652 * doc/gnat_rm/implementation_defined_aspects.rst: Minor type/wording
1653 corrections.
1654 * gnat_rm.texi: Regenerate.
1655
07733aa1
ES
16562018-01-11 Ed Schonberg <schonberg@adacore.com>
1657
1658 * sem_ch12.adb (Check_Fixed_Point_Type): Do not apply check if the
1659 formsl type corresponding to the actual fixed point type is private,
1660 because in this case there can be no suspicious arithmetic operations
1661 in the generic unless they reference a formal subprogram. Clarify
1662 warning.
1663
78cac738
JM
16642018-01-11 Javier Miranda <miranda@adacore.com>
1665
1666 * exp_util.adb (Remove_Side_Effects): No action done for functions
1667 returning class-wide types since it requires generating code using
1668 'reference and the CCG target has no secondary stack.
1669 * gnat1drv.adb: Disable building static dispatch tables when generating
1670 C code.
1671
210fef2d
PT
16722018-01-11 Piotr Trojanek <trojanek@adacore.com>
1673
1674 * libgnat/a-direio.ads, libgnat/a-sequio.ads, libgnat/a-ststio.ads,
1675 libgnat/a-textio.ads, libgnat/a-witeio.ads, libgnat/a-ztexio.ads
1676 (File_Type): Add Default_Initial_Condition aspect.
1677
7d1553e2
PO
16782018-01-11 Pascal Obry <obry@adacore.com>
1679
1680 * libgnat/s-os_lib.adb (Normalize_Pathname): New implementation.
1681
1646b09f
BD
16822018-01-11 Bob Duff <duff@adacore.com>
1683
1684 * doc/gnat_ugn/gnat_utility_programs.rst: Rewrite gnatpp documentation
1685 to match what the Libadalang-based version does.
1686 * doc/gnat_ugn/about_this_guide.rst: Update reference.
1687
7460ccc7
HK
16882018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
1689
1690 * sem_res.adb (Uses_SS): A controlled type requires the secondary stack
1691 if it contains at least one component declaration employing a function
1692 call returning on the secondary stack.
1693
a5b2e440
YM
16942018-01-11 Yannick Moy <moy@adacore.com>
1695
1696 * doc/gnat_rm/standard_and_implementation_defined_restrictions.rst:
1697 Update description of restriction SPARK_05 with SPARK 2014.
1698 * gnat_rm.texi: Regenerate.
1699
151af7d2
VF
17002018-01-11 Vasiliy Fofanov <fofanov@adacore.com>
1701
1702 * doc/gnat_ugn/gnat_utility_programs.rst: Fix layout.
1703
10fdda1c
HK
17042018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
1705
1706 * exp_aggr.adb, exp_ch9.adb, exp_util.adb, sem_aggr.adb, sem_ch3.adb,
1707 sem_res.adb, sem_util.adb: Minor reformatting.
1708
4d6000d7
ES
17092018-01-11 Ed Schonberg <schonberg@adacore.com>
1710
1711 * sem_prag.adb (Analyze_Pragma, case Predicate): Indicate that the type
1712 has a delayed aspect which must be processed at the point the type is
1713 frozen. This mimics what is done when the predicate is provided by a
1714 source aspect.
1715
19fb0439
DR
17162018-01-11 Doug Rupp <rupp@adacore.com>
1717
1718 * init.c (vxworks): Add macro checks for __aarch64__.
1719
80631298
HK
17202018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
1721
1722 * exp_util.adb (Add_Failure_Expression): New routine.
1723 (Make_Predicate_Check): Reimplement the handling of Predicate_Failure.
1724 * sem_util.adb (Is_Current_Instance): Code cleanup.
1725
6a5e79b4
PB
17262018-01-11 Patrick Bernardi <bernardi@adacore.com>
1727
1728 * libgnat/s-parame*.adb, libgnat/s-parame*.ads: Remove unneeded
1729 Default_Sec_Stack_Size.
1730 * libgnat/s-secsta.adb (SS_Allocate): Handle the fixed secondary stack
1731 limit check so that the integer index does not overflow. Check the
1732 dynamic stack allocation does not cause the secondary stack pointer to
1733 overflow.
1734 (SS_Info): Align colons.
1735 (SS_Init): Cover the case when bootstraping with an old compiler that
1736 does not set Default_SS_Size.
1737
5cb78fb8
ES
17382018-01-11 Ed Schonberg <schonberg@adacore.com>
1739
1740 * sem_ch3.adb (Add_Internal_Interface_Entities): When checking the
1741 legality of an inherited operation that may require overriding, ignore
1742 primitive_wrappers that correspond to explicit operations that override
1743 an interface primitive.
1744 * exp_util.adb (Build_Class_Wide_Expression, Replace_Entity): If the
1745 operation to which the class-wide expression applies is a protected op.
1746 with a primitive_wrapper, verify that the updated inherited expression
1747 does not contain an internal call to a protected function. This
1748 completes the implementation of AI12-0166.
1749
94ce4941
HK
17502018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
1751
1752 * ali.adb: Document the remaining letters available for ALI lines.
1753 (Scan_ALI): A with clause is internal when it is encoded on a 'Z' line.
1754 * ali.ads: Update type With_Record. Field
1755 Implicit_With_From_Instantiation is no longer in use. Add field
1756 Implicit_With.
1757 * csinfo.adb (CSinfo): Remove the setup for attribute
1758 Implicit_With_From_Instantiation.
1759 * lib-writ.adb (Collect_Withs): Correct the logic which marks a unit as
1760 either implicitly or explicitly withed.
1761 (Is_Implicit_With_Clause): New routine.
1762 (Write_ALI): Rename array Implicit_With to Has_Implicit_With to avoid
1763 confusion with the with clause attribute by the same name.
1764 (Write_With_Lines): Update the emission of 'W', 'Y', and 'Z' headers.
1765 * rtsfind.adb (Maybe_Add_With): Code cleanup.
1766 * sem_ch8.adb (Present_System_Aux): Code cleanup.
1767 * sem_ch10.adb (Expand_With_Clause): Mark the with clause as generated
1768 for a parent unit.
1769 (Implicit_With_On_Parent): Mark the with clause as generated for a
1770 parent unit.
1771 * sem_ch12.adb (Inherit_Context): With clauses inherited by an
1772 instantiation are no longer marked as Implicit_With_From_Instantiation
1773 because they are already marked as implicit.
1774 * sem_elab.adb (Ensure_Prior_Elaboration_Static): Remove the kludge
1775 which marks implicit with clauses as related to an instantiation.
1776 * sinfo.adb (Implicit_With_From_Instantiation): Removed.
1777 (Parent_With): New routine.
1778 (Set_Implicit_With_From_Instantiation): Removed.
1779 (Set_Parent_With): New routine.
1780 * sinfo.ads: Update the documentation of attribute Implicit_With.
1781 Remove attribute Implicit_With_From_Instantiation along with
1782 occurrences in nodes. Add attribute Parent_With along with occurrences
1783 in nodes.
1784 (Implicit_With_From_Instantiation): Removed along with pragma Inline.
1785 (Parent_With): New routine along with pragma Inline.
1786 (Set_Implicit_With_From_Instantiation): Removed along with pragma Inline.
1787 (Set_Parent_With): New routine along with pragma Inline.
1788
77519270
HK
17892018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
1790
1791 * sem_util.adb (Find_Enclosing_Scope): Return the unique defining
1792 entity when the enclosing construct is a body.
1793
a40d9947
PB
17942018-01-11 Patrick Bernardi <bernardi@adacore.com>
1795
1796 * exp_ch9.adb (Expand_N_Task_Type_Declaration): Simplified
1797 Secondary_Stack_Size handling as a pragma is now generated for the
1798 corresponding aspect instead of an attribute. Pragma expression is
1799 relocated instead of evaluated. Discriminant of the corresponding
1800 record type is referenced rather than the type discriminant.
1801 (Create_Secondary_Stack_For_Task, Make_Task_Create_Call): Update
1802 Secondary_Stack_Size rep item checks to only look for the pragma rep.
1803 * sem_ch13.adb (Analyze_One_Aspect): Transform
1804 Aspect_Secondary_Stack_Size into a pragma instead of an attribute
1805 because the attribute does not have visibility on a task type's
1806 discriminants when the type's definition is expanded.
1807 (Analyze_Attribute_Definition_Clause): Remove handling of
1808 Attribute_Secondary_Stack_Size.
1809 * snames.adb-tmpl, snames.ads-tmpl: Remove
1810 Attribute_Secondary_Stack_Size, no longer used.
1811
6b199a18
JS
18122018-01-11 Justin Squirek <squirek@adacore.com>
1813
1814 * sem_ch8.adb: Minor comment fix.
1815
05344a33
HK
18162018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
1817
1818 * exp_ch4.adb (Process_Action): Do not abandon the inspection of an
1819 individual action because the action may denote a complex expression,
1820 such as a case statement, which in turn may contain additional
1821 transient objects.
1822
d940c627
ES
18232018-01-11 Ed Schonberg <schonberg@adacore.com>
1824
1825 * sem_aggr.adb (Resolve_Iterated_Component_Association): Perform
1826 analysis on a copy of the expression with a copy of the index variable,
1827 because full expansion will rewrite construct into a loop with the
1828 original loop variable.
1829 * exp_aggr.adb (Gen_Assign): Defer analysis and resolution if the
1830 expression is an iterated component association. Full analysis takes
1831 place when construct is rewritten as a loop.
1832 (In_Place_Assign_OK, Safe_Component): An iterated_component_association
1833 is not safe for in-place assignment.
1834 * sem_util.adb (Remove_Entity): Handle properly the case of an isolated
1835 entity with no homonym and no other entity in the scope.
1836
c8f25817
JS
18372018-01-11 Justin Squirek <squirek@adacore.com>
1838
1839 * sem_prag.adb (Analyze_Pragma:Pragma_Loop_Variant): Modify error
1840 message to be printed on the pragma argument identifier.
1841
51f3e4e1
HK
18422018-01-11 Hristian Kirtchev <kirtchev@adacore.com>
1843
1844 * exp_util.adb (Build_Invariant_Procedure_Declaration): Set the last
1845 entity of the generated invariant procedure in order to construct a
1846 proper entity chain.
1847
593e3172
PT
18482018-01-11 Piotr Trojanek <trojanek@adacore.com>
1849
1850 * sem_ch13.adb (Build_Predicate_Functions): Fix minor issues in
1851 comment.
1852
89a4fa68
AC
18532018-01-11 Arnaud Charlet <charlet@adacore.com>
1854
1855 * einfo.ads, einfo.adb (Activation_Record_Component,
1856 Set_Activation_Record_Component, Set_Is_Uplevel_Referenced_Entity):
1857 Allow E_Discriminant.
1858
af95bb26
EB
18592018-01-10 Eric Botcazou <ebotcazou@adacore.com>
1860
1861 * gcc-interface/decl.c (gnat_to_gnu_component_type): Apply the check
1862 for atomic access once the component size is taken into account and
1863 also do it if the component type is Atomic or Volatile_Full_Access.
1864
5d35675c
EB
18652018-01-04 Eric Botcazou <ebotcazou@adacore.com>
1866
1867 * gnatvsn.ads: Bump copyright year.
1868
73a699ae
RS
18692018-01-03 Richard Sandiford <richard.sandiford@linaro.org>
1870 Alan Hayward <alan.hayward@arm.com>
1871 David Sherwood <david.sherwood@arm.com>
1872
1873 * gcc-interface/misc.c (enumerate_modes): Treat GET_MODE_BITSIZE
1874 as polynomial.
1875
bb94ec76
RS
18762018-01-03 Richard Sandiford <richard.sandiford@linaro.org>
1877 Alan Hayward <alan.hayward@arm.com>
1878 David Sherwood <david.sherwood@arm.com>
1879
1880 * gcc-interface/misc.c (enumerate_modes): Treat GET_MODE_PRECISION
1881 as polynomial.
1882
928686b1
RS
18832018-01-03 Richard Sandiford <richard.sandiford@linaro.org>
1884 Alan Hayward <alan.hayward@arm.com>
1885 David Sherwood <david.sherwood@arm.com>
1886
1887 * gcc-interface/utils.c (gnat_types_compatible_p): Handle
1888 polynomial TYPE_VECTOR_SUBPARTS.
1889
7b777afa
RS
18902018-01-03 Richard Sandiford <richard.sandiford@linaro.org>
1891 Alan Hayward <alan.hayward@arm.com>
1892 David Sherwood <david.sherwood@arm.com>
1893
1894 * gcc-interface/misc.c (enumerate_modes): Handle polynomial
1895 GET_MODE_NUNITS.
1896
65e6aea3 18972018-01-03 Jakub Jelinek <jakub@redhat.com>
0e5b9de3 1898
85ec4feb
JJ
1899 Update copyright years.
1900
65e6aea3
JJ
1901 * gnat_ugn.texi: Bump @copying's copyright year.
1902 * gnat_rm.texi: Likewise.
ad41bd84 1903\f
65e6aea3 1904Copyright (C) 2018 Free Software Foundation, Inc.
ad41bd84
JM
1905
1906Copying and distribution of this file, with or without modification,
1907are permitted in any medium without royalty provided the copyright
1908notice and this notice are preserved.
This page took 3.188838 seconds and 5 git commands to generate.