From 03a2b9ede1ee9a02d3c9dbb2aa1556913ebec531 Mon Sep 17 00:00:00 2001 From: Arnaud Charlet Date: Wed, 5 Dec 2012 11:26:14 +0100 Subject: [multiple changes] 2012-12-05 Eric Botcazou * gnat_rm.texi (Interfacing to C++): Document new restrictions. 2012-12-05 Ben Brosgol * gnat_ugn.texi: Fix typo. 2012-12-05 Robert Dewar * gnatbind.adb: Minor reformatting. From-SVN: r194195 --- gcc/ada/ChangeLog | 12 ++++++++++++ gcc/ada/gnat_rm.texi | 10 ++++++++-- gcc/ada/gnat_ugn.texi | 2 +- gcc/ada/gnatbind.adb | 8 ++------ 4 files changed, 23 insertions(+), 9 deletions(-) diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index eb3616f..7f77767 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,15 @@ +2012-12-05 Eric Botcazou + + * gnat_rm.texi (Interfacing to C++): Document new restrictions. + +2012-12-05 Ben Brosgol + + * gnat_ugn.texi: Fix typo. + +2012-12-05 Robert Dewar + + * gnatbind.adb: Minor reformatting. + 2012-12-05 Arnaud Charlet * gnat_ugn.texi: Fix typo. diff --git a/gcc/ada/gnat_rm.texi b/gcc/ada/gnat_rm.texi index cd18f78..b0e9f32 100644 --- a/gcc/ada/gnat_rm.texi +++ b/gcc/ada/gnat_rm.texi @@ -4034,7 +4034,7 @@ compiled in @code{Optimize_Alignment (Space)} mode, the alignment is set to 1. However, there is one case in which SPACE is ignored. If a variable length record (that is a discriminated record with a component which is an array -whose length depends on a discriminant), has a pragam pack, then it is not +whose length depends on a discriminant), has a pragma Pack, then it is not in general possible to set the alignment of such a record to one, so the pragma is ignored in this case (with a warning). @@ -4200,7 +4200,7 @@ remaining declarations and statements in that scope. The pragma @code{Suppress (Overflow_Check)} suppresses overflow checking, but does not affect the overflow mode. -The pragam @code{Unsuppress (Overflow_Check)} unsuppresses (enables) +The pragma @code{Unsuppress (Overflow_Check)} unsuppresses (enables) overflow checking, but does not affect the overflow mode. @node Pragma Passive @@ -16730,6 +16730,12 @@ This pragma identifies an imported function (imported in the usual way with pragma @code{Import}) as corresponding to a C++ constructor. @end table +A few restrictions are placed on the use of the @code{Access} attribute +in conjunction with subprograms subject to convention @code{CPP}: the +attribute may be used neither on primitive operations of a tagged +record type with convention @code{CPP}, imported or not, nor on +subprograms imported with pragma @code{CPP_Constructor}. + In addition, C++ exceptions are propagated and can be handled in an @code{others} choice of an exception handler. The corresponding Ada occurrence has no message, and the simple name of the exception identity diff --git a/gcc/ada/gnat_ugn.texi b/gcc/ada/gnat_ugn.texi index 30bff66..6d47f04 100644 --- a/gcc/ada/gnat_ugn.texi +++ b/gcc/ada/gnat_ugn.texi @@ -6951,7 +6951,7 @@ the base type range. @item 2 = MINIMIZED In MINIMIZED mode, overflows in intermediate operations are avoided where possible by using a larger integer type for the computation -(typically @code{Long_Long_Integer). Overflow checking ensures that +(typically @code{Long_Long_Integer}). Overflow checking ensures that the result fits in this larger integer type. @item 3 = ELIMINATED diff --git a/gcc/ada/gnatbind.adb b/gcc/ada/gnatbind.adb index afe74ec..c53d67e 100644 --- a/gcc/ada/gnatbind.adb +++ b/gcc/ada/gnatbind.adb @@ -545,9 +545,7 @@ begin -- Test for trailing -o switch - if Opt.Output_File_Name_Present - and then not Output_File_Name_Seen - then + if Opt.Output_File_Name_Present and then not Output_File_Name_Seen then Fail ("output file name missing after -o"); end if; @@ -559,9 +557,7 @@ begin -- Check that the binder file specified has extension .adb - if Opt.Output_File_Name_Present - and then Output_File_Name_Seen - then + if Opt.Output_File_Name_Present and then Output_File_Name_Seen then Check_Extensions : declare Length : constant Natural := Output_File_Name'Length; Last : constant Natural := Output_File_Name'Last; -- cgit v1.1