Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
riscv is another platform on which GNAT maps Long_Long_Float to double
rather than long double, so we have to explicitly avoid the long
double intrinsics.
for gcc/ada/ChangeLog
PR ada/97504
* Makefile.rtl (LIBGNAT_TARGET_PAIRS> <riscv*-*-*>: Use wraplf
version of Aux_Long_Long_Float.
|
|
|
|
gcc/ada/
* Makefile.rtl: Add vx7r2cert spec file to ARM, PowerPC and x86
targets.
* vxworks7-cert-rtp-link.spec: New spec file.
|
|
gcc/ada/
* Makefile.rtl (GNATRTL_NONTASKING_OBJS): Add g-spogwa object.
* libgnat/g-spogwa.adb: Fix style errors.
|
|
gcc/ada/
* exp_spark.adb (Expand_SPARK_Array_Aggregate): Dedicated
routine for array aggregates; mostly reuses existing code, but
calls itself recursively for multi-dimensional array aggregates.
(Expand_SPARK_N_Aggregate): Call Expand_SPARK_Array_Aggregate to
do the actual expansion, starting from the first index of the
array type.
|
|
gcc/ada/
* sem_aggr.adb (Resolve_Iterated_Component_Association): new
internal subprogram Remove_References, to reset semantic
information on each reference to the index variable of the
association, so that Collect_Aggregate_Bounds can work properly
on multidimensional arrays with nested associations, and
subsequent expansion into loops can verify that dimensions of
each subaggregate are compatible.
|
|
gcc/ada/
* exp_prag.adb (Append_Copies): Handle N_Parameter_Associations.
|
|
gcc/ada/
* ada_get_targ.adb (Digits_From_Size): Delete.
(Width_From_Size): Likewise.
* get_targ.adb (Digits_From_Size): Likewise.
(Width_From_Size): Likewise.
* get_targ.ads (Digits_From_Size): Likewise.
(Width_From_Size): Likewise.
* ttypes.ads: Remove with clause for Get_Targ.
(Standard_Short_Short_Integer_Width): Delete.
(Standard_Short_Integer_Width): Likewise.
(Standard_Integer_Width): Likewise.
(Standard_Long_Integer_Width): Likewise.
(Standard_Long_Long_Integer_Width): Likewise.
(Standard_Long_Long_Long_Integer_Width): Likewise.
(Standard_Short_Float_Digits): Likewise.
(Standard_Float_Digits): Likewise.
(Standard_Long_Float_Digits): Likewise.
(Standard_Long_Long_Float_Digits): Likewise.
* gnat1drv.adb (Adjust_Global_Switches): Adjust.
|
|
gcc/ada/
* exp_ch6.adb, freeze.adb, gnat1drv.adb, opt.ads, sem_ch6.adb
(Transform_Function_Array): New flag, split from Modify_Tree_For_C.
* exp_unst.adb: Minor reformatting.
|
|
gcc/ada/
* libgnat/g-socpol.adb (Wait): Do not exit from loop on EINTR
error and timeout is over.
|
|
|
|
gcc/ada/
* exp_aggr.adb (Build_Array_Aggr_Code): If the aggregate
includes an Others_Choice in an association that is an
Iterated_Component_Association, generate a proper loop for it.
|
|
gcc/ada/
* libgnat/a-tifiio.adb: Add missing sign in documentation.
* libgnat/s-imgrea.ads: Minor fixes in commentary.
|
|
gcc/ada/
* doc/gnat_rm/implementation_defined_pragmas.rst: Include
"Jorvik" in pragma Profile description.
* gnat_rm.texi: Regenerate.
|
|
gcc/ada/
* sem_attr.adb (Check_Image_Type): Remove "|", so the compiler
will not crash.
* errout.ads: Improve comment. This has nothing to do with
-gnatQ.
|
|
gcc/ada/
* libgnat/a-tifiio.adb: Minor editions to documentation.
|
|
gcc/ada/
* contracts.adb (Causes_Contract_Freezing): Extend condition to
match the one in Analyze_Subprogram_Body_Helper. This routine is
used both as an assertion at the very start of
Freeze_Previous_Contracts and to detect previous declaration for
which Freeze_Previous_Contracts has been executed.
|
|
gcc/ada/
* libgnat/a-tifiio.adb: Move around documentaton paragraph.
|
|
gcc/ada/
* inline.adb (Establish_Actual_Mapping_For_Inlined_Call): Add
guard for a call to Set_Last_Assignment with the same condition
as the assertion in that routine and explain why this guard
fails in GNATprove mode.
|
|
gcc/ada/
* doc/gnat_rm/implementation_defined_characteristics.rst: Adjust
the entries of 3.5.9(8) and 3.5.9(10).
* gnat_rm.texi: Regenerate.
|
|
gcc/ada/
* libgnat/a-tifiio.adb: Change the range of supported Small
values.
(E0, E1, E2): Adjust factors.
(Exact): Return false if the Small does not fit in 64 bits.
|
|
gcc/ada/
* libgnat/g-socket.adb (Wait_On_Socket): Boolean parameter
For_Read changed to Event parameter of type
GNAT.Sockets.Poll.Wait_Event_Set. Implementation is simplified
and based on call to GNAT.Sockets.Poll.Wait now.
|
|
gcc/ada/
* libgnat/a-tifiio.adb: Minor editions to documentation.
|
|
gcc/ada/
* sem_ch12.adb (Restore_Private_Views): Do not lose the
information provided by Is_Generic_Actual_Type in GNATprove
mode.
|
|
gcc/ada/
* sem_warn.adb (Warn_On_Unreferenced_Entity): Suppress warning
on formal parameters of all dispatching operations.
gcc/testsuite/
* gnat.dg/warn14.adb: Update expectations.
|
|
gcc/ada/
* sem_aggr.adb (Resolve_Delta_Array_Aggregate): Fix typos in
error message.
|
|
gcc/ada/
* libgnat/s-dwalin.adb (Symbolic_Traceback): Always emit the hex
address at the beginning of an entry if suppression is not
requested. Consistently output a "???" for the subprogram name
when it is unknown.
|
|
gcc/ada/
* s-oscons-tmplt.c (_nfds_t): Use sizeof (unsigned long int).
|
|
gcc/ada/
* par-ch4.adb (P_Iterated_Component_Association): Move code for
iterated_element_association to
Build_Iterated_Element_Association.
|
|
gcc/ada/
* sem_ch12.adb (Needs_Body_Instantiated): In GNATprove mode, do
not instantiate bodies outside of the main unit.
|
|
gcc/ada/
* sem_aggr.adb (Resolve_Delta_Array_Aggregate): For an
association that is an iterated component association, attach
the copy of the expression to the tree prior to analysis, in
order to preserve its context. This is needed when verifying
static semantic rules that depend on context, for example that a
use of 'Old appears only within a postcondition.
|
|
gcc/ada/
* doc/gnat_ugn/gnat_utility_programs.rst: Document that
--no-comments-fill is now the default.
|
|
gcc/ada/
* sem_aggr.adb (Resolve_Extension_Aggregate): When testing for
an aggregate that is illegal due to having an ancestor type that
has unknown discriminants, add an "or else" condition testing
whether the aggregate type has unknown discriminants and that
Partial_View_Has_Unknown_Discr is also set on the ancestor type.
Extend the comment, including adding ??? about a possible
simpler test.
|
|
gcc/ada/
* libgnat/a-cihama.adb, libgnat/a-cohama.adb,
libgnat/a-cohase.adb (Delete): Set Position.Position, and
assert.
|
|
gcc/ada/
* sem_ch8.adb (Find_Direct_Name.Undefined): Handle known unit
names with 3 selectors.
|
|
gcc/ada/
* exp_spark.adb (Expand_SPARK_Delta_Or_Update): Add missing call
to Enter_Name, just like it is called for
iterated_component_association in Expand_SPARK_N_Aggregate.
|
|
gcc/ada/
* exp_spark.adb (Expand_SPARK_Delta_Or_Update): Reuse local
constant Expr and the Choice_List routine.
(Expand_SPARK_N_Aggregate): Reuse local constant Expr.
|
|
gcc/ada/
* par-ch4.adb (P_Iterated_Component_Association): Fix typos in
comments.
|
|
gcc/ada/
* par-ch6.adb (P_Formal_Part): Ada 2020 supports scanning
aspects on formal parameters.
* doc/gnat_rm/implementation_defined_aspects.rst (Aspect
Unreferenced): Update documentation.
* gnat_rm.texi: Regenerate.
|
|
gcc/ada/
* freeze.adb (Freeze_Type_Refs): When an entity in an expression
function is a type, freeze the entity and not just its type,
which would be incomplete when the type is derived and/or
tagged.
|
|
gcc/ada/
* exp_attr.adb (Expand_Update_Attribute): Handle
subtype_indication just like in Expand_Delta_Array_Aggregate.
|
|
|
|
The GNATRTL_128BIT_PAIRS/OBJS need to be added for 64bit
multilibs on powerpc-darwin, and for powerpc64-darwin.
gcc/ada/ChangeLog:
* Makefile.rtl: Add GNATRTL_128BIT_PAIRS/OBJS for 64bit
PowerPC Darwin cases.
|
|
|
|
Darwin struct stat has timeval entry fields for file access and
modification times but they are named differently from those
on Linux.
As a workaround define the field names to the Darwin equivalent.
gcc/ada/ChangeLog:
* adaint.c: On Darwin platforms, define st_atim to
st_atimespec. Likwise st_mtim to st_mtimespec.
|
|
gcc/ada/ChangeLog:
* Makefile.rtl (EXTRA_GNATRTL_NONTASKING_OBJS) [IA64/Linux]: Fix typo.
|
|
gcc/ada/ChangeLog:
* Makefile.rtl (EXTRA_GNATRTL_NONTASKING_OBJS) [IA64/Linux]: Fix typo.
|
|
The wraplf version of Ada.Numerics.Aux_Long_Long_Float is needed on
s390* as well. Also add it to sparc*-linux-gnu and powerpc-darwin,
that were missed when adding it for sparc and ppc targets.
for gcc/ada/ChangeLog
PR ada/97504
* Makefile.rtl (LIBGNAT_TARGET_PAIRS): Select wraplf version
of Aux_Long_Long_Float for s390 and remaining sparc and
powerpc targets.
|
|
gcc/ada/
* Makefile.rtl (GNATRTL_SOCKETS_OBJS): New object
g-socpol$(objext) New source files noted: g-socpol.adb,
g-socpol.ads, g-socpol__dummy.adb, g-socpol__dummy.ads,
g-sopowa.adb, g-sopowa__posix.adb, g-sopowa__mingw.adb,
g-spogwa.adb, g-spogwa.ads.
* impunit.adb (Non_Imp_File_Names_95): New base filename
g-socpol in "GNAT Library Units" section for GNAT.Sockets.Poll
unit.
* libgnat/g-socket.ads, libgnat/g-socket.adb:
(Raise_Socket_Error): Moved from body to private part of
specification to use in GNAT.Sockets.Poll.
* libgnat/g-socpol.ads, libgnat/g-socpol.adb: Main unit of the
implementation.
* libgnat/g-socpol__dummy.ads, libgnat/g-socpol__dummy.adb:
Empty unit for the systems without sockets support.
* libgnat/g-spogwa.ads, libgnat/g-spogwa.adb: Generic unit
implementing sockets poll on top of select system call.
* libgnat/g-sopowa.adb (Wait): Separate implementation for
operation systems with poll system call support.
* libgnat/g-sopowa__posix.adb (Wait): Separate implementation
for POSIX select system call.
* libgnat/g-sopowa__mingw.adb (Wait): Separate implementation
for Windows select system call.
* gsocket.h (_WIN32_WINNT): Increase to 0x0600 for winsock2.h to
allow WSAPoll related definitions.
* s-oscons-tmplt.c: Fix comment next to #endif for
#if defined (__linux__) || defined (__ANDROID__) line. Include
<poll.h> for all except VxWorks and Windows.
(SIZEOF_nfds_t): New definition.
(SIZEOF_fd_type): New definition.
(SIZEOF_pollfd_events): New definition.
(POLLIN, POLLPRI, POLLOUT, POLLERR, POLLHUP, POLLNVAL): New
definitions for VxWorks to be able to emulate poll on top of
select in it. Define POLLPRI as zero on Windows as it is not
supported there.
(Poll_Linkname): New definition, because the poll system call
has different name in Windows and POSIX.
|