[multiple changes]
authorArnaud Charlet <charlet@gcc.gnu.org>
Fri, 12 Apr 2013 12:48:12 +0000 (14:48 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Fri, 12 Apr 2013 12:48:12 +0000 (14:48 +0200)
2013-04-12  Bob Duff  <duff@adacore.com>

* par-ch7.adb (P_Package): Initialize Sloc in the newly-pushed scope
stack entry.

2013-04-12  Robert Dewar  <dewar@adacore.com>

* switch-c.adb: Minor fix to wording of error message for
-gnatet/eT.

2013-04-12  Robert Dewar  <dewar@adacore.com>

* impunit.adb: Add s-multip and s-mudido to list of impl defined
system units.
* gnat_rm.texi: Add documentation for
System.Multiprocessors[.Dispatching_Domains].

2013-04-12  Ben Brosgol  <brosgol@adacore.com>

* gnat_ugn.texi: Completion of menu cleanups.

2013-04-12  Arnaud Charlet  <charlet@adacore.com>

* sem_prag.adb (Diagnose_Multiple_Pragmas): Relax the rules
in Relaxed_RM_Semantics.

2013-04-12  Arnaud Charlet  <charlet@adacore.com>

* set_targ.adb (elab code): Add support for non gcc back-ends
where save_argv is null.

From-SVN: r197899

gcc/ada/ChangeLog
gcc/ada/gnat_rm.texi
gcc/ada/gnat_ugn.texi
gcc/ada/impunit.adb
gcc/ada/par-ch7.adb
gcc/ada/sem_prag.adb
gcc/ada/set_targ.adb
gcc/ada/switch-c.adb

index e71c87783cdbe57fcaac9f1b6eae993023deab26..309e82836ca305f1441ad6b2c1087978173ace28 100644 (file)
@@ -1,3 +1,34 @@
+2013-04-12  Bob Duff  <duff@adacore.com>
+
+       * par-ch7.adb (P_Package): Initialize Sloc in the newly-pushed scope
+       stack entry.
+
+2013-04-12  Robert Dewar  <dewar@adacore.com>
+
+       * switch-c.adb: Minor fix to wording of error message for
+       -gnatet/eT.
+
+2013-04-12  Robert Dewar  <dewar@adacore.com>
+
+       * impunit.adb: Add s-multip and s-mudido to list of impl defined
+       system units.
+       * gnat_rm.texi: Add documentation for
+       System.Multiprocessors[.Dispatching_Domains].
+
+2013-04-12  Ben Brosgol  <brosgol@adacore.com>
+
+       * gnat_ugn.texi: Completion of menu cleanups.
+
+2013-04-12  Arnaud Charlet  <charlet@adacore.com>
+
+       * sem_prag.adb (Diagnose_Multiple_Pragmas): Relax the rules
+       in Relaxed_RM_Semantics.
+
+2013-04-12  Arnaud Charlet  <charlet@adacore.com>
+
+       * set_targ.adb (elab code): Add support for non gcc back-ends
+       where save_argv is null.
+
 2013-04-12  Robert Dewar  <dewar@adacore.com>
 
        * gnat1drv.adb (Gnat1drv): Test Target_Dependent_Info_Write_Name.
index e320acd52fa5ec69662e4499e4d70723515b67b8..abdfcce052c097447813d36152a16460b3f6ab48 100644 (file)
@@ -548,6 +548,8 @@ The GNAT Library
 * System.Address_Image (s-addima.ads)::
 * System.Assertions (s-assert.ads)::
 * System.Memory (s-memory.ads)::
+* System.Multiprocessors (s-multip.ads)::
+* System.Multiprocessors.Dispatching_Domains (s-mudido.ads)::
 * System.Partition_Interface (s-parint.ads)::
 * System.Pool_Global (s-pooglo.ads)::
 * System.Pool_Local (s-pooloc.ads)::
@@ -15508,6 +15510,8 @@ of GNAT, and will generate a warning message.
 * System.Address_Image (s-addima.ads)::
 * System.Assertions (s-assert.ads)::
 * System.Memory (s-memory.ads)::
+* System.Multiprocessors (s-multip.ads)::
+* System.Multiprocessors.Dispatching_Domains (s-mudido.ads)::
 * System.Partition_Interface (s-parint.ads)::
 * System.Pool_Global (s-pooglo.ads)::
 * System.Pool_Local (s-pooloc.ads)::
@@ -16970,6 +16974,22 @@ allocation mechanisms for the default pool, and in addition, direct
 calls to this unit may be made for low level allocation uses (for
 example see the body of @code{GNAT.Tables}).
 
+@node System.Multiprocessors (s-multip.ads)
+@section @code{System.Multiprocessors} (@file{s-multip.ads})
+@cindex @code{System.Multiprocessors} (@file{s-multip.ads})
+@cindex Multiprocessor interface
+This is an Ada 2012 unit defined in the Ada 2012 Reference Manual, but
+in GNAT we also make it available in Ada 95 and Ada 2005 (where it is
+technically an implementation-defined addition).
+
+@node System.Multiprocessors.Dispatching_Domains (s-mudido.ads)
+@section @code{System.Multiprocessors.Dispatching_Domains} (@file{s-mudido.ads})
+@cindex @code{System.Multiprocessors.Dispatching_Domains} (@file{s-mudido.ads})
+@cindex Multiprocessor interface
+This is an Ada 2012 unit defined in the Ada 2012 Reference Manual, but
+in GNAT we also make it available in Ada 95 and Ada 2005 (where it is
+technically an implementation-defined addition).
+
 @node System.Partition_Interface (s-parint.ads)
 @section @code{System.Partition_Interface} (@file{s-parint.ads})
 @cindex @code{System.Partition_Interface} (@file{s-parint.ads})
index 9be0dbff2f27da1b6cdd63a76a2340517b32509d..8d46f70bde88b7560259b9378f812db63f22bbe2 100644 (file)
@@ -169,32 +169,32 @@ AdaCore@*
 * About This Guide::
 * Getting Started with GNAT::
 * The GNAT Compilation Model::
-* Compiling With gcc::
-* Binding With gnatbind::
-* Linking With gnatlink::
+* Compiling with gcc::
+* Binding with gnatbind::
+* Linking with gnatlink::
 * The GNAT Make Program gnatmake::
 * Improving Performance::
-* Renaming Files Using gnatchop::
+* Renaming Files with gnatchop::
 * Configuration Pragmas::
-* Handling Arbitrary File Naming Conventions Using gnatname::
+* Handling Arbitrary File Naming Conventions with gnatname::
 * GNAT Project Manager::
 * Tools Supporting Project Files::
 * The Cross-Referencing Tools gnatxref and gnatfind::
 * The GNAT Pretty-Printer gnatpp::
-* The GNAT Metric Tool gnatmetric::
-* File Name Krunching Using gnatkr::
-* Preprocessing Using gnatprep::
+* The GNAT Metrics Tool gnatmetric::
+* File Name Krunching with gnatkr::
+* Preprocessing with gnatprep::
 * The GNAT Library Browser gnatls::
-* Cleaning Up Using gnatclean::
+* Cleaning Up with gnatclean::
 @ifclear vms
 * GNAT and Libraries::
 * Using the GNU make Utility::
 @end ifclear
 * Memory Management Issues::
 * Stack Related Facilities::
-* Verifying Properties Using gnatcheck::
-* Creating Sample Bodies Using gnatstub::
-* Creating Unit Tests Using gnattest::
+* Verifying Properties with gnatcheck::
+* Creating Sample Bodies with gnatstub::
+* Creating Unit Tests with gnattest::
 * Performing Dimensionality Analysis in GNAT::
 * Generating Ada Bindings for C and C++ headers::
 * Other Utility Programs::
@@ -257,21 +257,21 @@ The GNAT Compilation Model
 * Placement of temporary files::
 @end ifset
 
-Compiling With gcc
+Compiling with gcc
 * Compiling Programs::
 * Switches for gcc::
 * Search Paths and the Run-Time Library (RTL)::
 * Order of Compilation Issues::
 * Examples::
 
-Binding With gnatbind
+Binding with gnatbind
 * Running gnatbind::
 * Switches for gnatbind::
 * Command-Line Access::
 * Search Paths for gnatbind::
 * Examples of gnatbind Usage::
 
-Linking With gnatlink
+Linking with gnatlink
 * Running gnatlink::
 * Switches for gnatlink::
 
@@ -289,7 +289,7 @@ Improving Performance
 * Reducing Size of Ada Executables with gnatelim::
 * Reducing Size of Executables with unused subprogram/data elimination::
 
-Renaming Files Using gnatchop
+Renaming Files with gnatchop
 * Handling Files with Multiple Units::
 * Operating gnatchop in Compilation Mode::
 * Command Line for gnatchop::
@@ -300,7 +300,7 @@ Configuration Pragmas
 * Handling of Configuration Pragmas::
 * The Configuration Pragmas Files::
 
-Handling Arbitrary File Naming Conventions Using gnatname
+Handling Arbitrary File Naming Conventions with gnatname
 * Arbitrary File Naming Conventions::
 * Running gnatname::
 * Switches for gnatname::
@@ -318,11 +318,8 @@ GNAT Project Manager
 * Project File Reference::
 
 Tools Supporting Project Files
-* Switches Related to Project Files::
-* Switches and Project Files::
-* Specifying Configuration Pragmas::
-* Project Files and Main Subprograms::
-* Library Project Files::
+* gnatmake and Project Files::
+* The GNAT Driver and Project Files::
 
 The Cross-Referencing Tools gnatxref and gnatfind
 * Switches for gnatxref::
@@ -339,13 +336,13 @@ The GNAT Pretty-Printer gnatpp
 The GNAT Metrics Tool gnatmetric
 * Switches for gnatmetric::
 
-File Name Krunching Using gnatkr
+File Name Krunching with gnatkr
 * About gnatkr::
 * Using gnatkr::
 * Krunching Method::
 * Examples of gnatkr Usage::
 
-Preprocessing Using gnatprep
+Preprocessing with gnatprep
 * Preprocessing Symbols::
 * Using gnatprep::
 * Switches for gnatprep::
@@ -357,7 +354,7 @@ The GNAT Library Browser gnatls
 * Switches for gnatls::
 * Examples of gnatls Usage::
 
-Cleaning Up Using gnatclean
+Cleaning Up with gnatclean
 * Running gnatclean::
 * Switches for gnatclean::
 @c * Examples of gnatclean Usage::
@@ -388,13 +385,13 @@ Stack Related Facilities
 * Static Stack Usage Analysis::
 * Dynamic Stack Usage Analysis::
 
-Verifying Properties Using gnatcheck
+Verifying Properties with gnatcheck
 
-Creating Sample Bodies Using gnatstub
+Creating Sample Bodies with gnatstub
 * Running gnatstub::
 * Switches for gnatstub::
 
-Creating Unit Tests Using gnattest
+Creating Unit Tests with gnattest
 * Running gnattest::
 * Switches for gnattest::
 * Project Attributes for gnattest::
@@ -431,8 +428,8 @@ Other Utility Programs
 
 @ifclear vms
 Code Coverage and Profiling
-* Code Coverage of Ada Programs using gcov::
-* Profiling an Ada Program using gprof::
+* Code Coverage of Ada Programs with gcov::
+* Profiling an Ada Program with gprof::
 @end ifclear
 
 Running and Debugging Ada Programs
@@ -445,7 +442,7 @@ Running and Debugging Ada Programs
 * Ada Exceptions::
 * Ada Tasks::
 * Debugging Generic Units::
-* Remote Debugging using gdbserver::
+* Remote Debugging with gdbserver::
 * GNAT Abnormal Termination or Failure to Terminate::
 * Naming Conventions for GNAT Source Files::
 * Getting Internal Debugging Information::
@@ -469,36 +466,6 @@ Compatibility with HP Ada
 * Input-Output::
 * Implementation Limits::
 * Tools and Utilities::
-
-Language-Related Features
-* Integer Types and Representations::
-* Floating-Point Types and Representations::
-* Pragmas Float_Representation and Long_Float::
-* Fixed-Point Types and Representations::
-* Record and Array Component Alignment::
-* Address Clauses::
-* Other Representation Clauses::
-
-Tasking and Task-Related Features
-* Implementation of Tasks in HP Ada for OpenVMS Alpha Systems::
-* Assigning Task IDs::
-* Task IDs and Delays::
-* Task-Related Pragmas::
-* Scheduling and Task Priority::
-* The Task Stack::
-* External Interrupts::
-
-Pragmas and Pragma-Related Features
-* Restrictions on the Pragma INLINE::
-* Restrictions on the Pragma INTERFACE::
-* Restrictions on the Pragma SYSTEM_NAME::
-
-Library of Predefined Units
-* Changes to DECLIB::
-
-Bindings
-* Shared Libraries and Options Files::
-* Interfaces to C::
 @end ifset
 
 Platform-Specific Information for the Run-Time Libraries
@@ -554,13 +521,13 @@ Compatibility and Porting Guide
 * Compatibility with Ada 83::
 * Compatibility between Ada 95 and Ada 2005::
 * Implementation-dependent characteristics::
+* Compatibility with Other Ada Systems::
+* Representation Clauses::
 @ifclear vms
 @c This brief section is only in the non-VMS version
 @c The complete chapter on HP Ada issues is in the VMS version
 * Compatibility with HP Ada 83::
 @end ifclear
-* Compatibility with Other Ada Systems::
-* Representation Clauses::
 @ifset vms
 * Transitioning to 64-Bit GNAT for OpenVMS::
 @end ifset
@@ -578,6 +545,7 @@ Microsoft Windows Topics
 * Introduction to Dynamic Link Libraries (DLLs)::
 * Using DLLs with GNAT::
 * Building DLLs with GNAT::
+* Building DLLs with gnatdll::
 * GNAT and Windows Resources::
 * Debugging a DLL::
 * Setting Stack Size from gnatlink::
@@ -650,16 +618,16 @@ and running Ada programs with the GNAT Ada programming environment.
 by GNAT.
 
 @item
-@ref{Compiling With gcc}, describes how to compile
+@ref{Compiling with gcc}, describes how to compile
 Ada programs with @command{gcc}, the Ada compiler.
 
 @item
-@ref{Binding With gnatbind}, describes how to
+@ref{Binding with gnatbind}, describes how to
 perform binding of Ada programs with @code{gnatbind}, the GNAT binding
 utility.
 
 @item
-@ref{Linking With gnatlink},
+@ref{Linking with gnatlink},
 describes @command{gnatlink}, a
 program that provides for linking using the GNAT run-time library to
 construct a program. @command{gnatlink} can also incorporate foreign language
@@ -679,7 +647,7 @@ also describes the @command{gnatelim} tool and unused subprogram/data
 elimination.
 
 @item
-@ref{Renaming Files Using gnatchop}, describes
+@ref{Renaming Files with gnatchop}, describes
 @code{gnatchop}, a utility that allows you to preprocess a file that
 contains Ada source code, and split it into one or more new files, one
 for each compilation unit.
@@ -689,7 +657,7 @@ for each compilation unit.
 handled by GNAT.
 
 @item
-@ref{Handling Arbitrary File Naming Conventions Using gnatname},
+@ref{Handling Arbitrary File Naming Conventions with gnatname},
 shows how to override the default GNAT file naming conventions,
 either for an individual unit or globally.
 
@@ -708,17 +676,17 @@ version of an Ada source file with control over casing, indentation,
 comment placement, and other elements of program presentation style.
 
 @item
-@ref{The GNAT Metric Tool gnatmetric}, shows how to compute various
+@ref{The GNAT Metrics Tool gnatmetric}, shows how to compute various
 metrics for an Ada source file, such as the number of types and subprograms,
 and assorted complexity measures.
 
 @item
-@ref{File Name Krunching Using gnatkr}, describes the @code{gnatkr}
+@ref{File Name Krunching with gnatkr}, describes the @code{gnatkr}
 file name krunching utility, used to handle shortened
 file names on operating systems with a limit on the length of names.
 
 @item
-@ref{Preprocessing Using gnatprep}, describes @code{gnatprep}, a
+@ref{Preprocessing with gnatprep}, describes @code{gnatprep}, a
 preprocessor utility that allows a single source file to be used to
 generate multiple or parameterized source files by means of macro
 substitution.
@@ -729,7 +697,7 @@ utility that displays information about compiled units, including dependences
 on the corresponding sources files, and consistency of compilations.
 
 @item
-@ref{Cleaning Up Using gnatclean}, describes @code{gnatclean}, a utility
+@ref{Cleaning Up with gnatclean}, describes @code{gnatclean}, a utility
 to delete files that are produced by the compiler, binder and linker.
 
 @ifclear vms
@@ -757,15 +725,15 @@ allocation and deallocation and helps detect ``memory leaks''.
 stack checking and analysis.
 
 @item
-@ref{Verifying Properties Using gnatcheck}, discusses @code{gnatcheck},
+@ref{Verifying Properties with gnatcheck}, discusses @code{gnatcheck},
 a utility that checks Ada code against a set of rules.
 
 @item
-@ref{Creating Sample Bodies Using gnatstub}, discusses @code{gnatstub},
+@ref{Creating Sample Bodies with gnatstub}, discusses @code{gnatstub},
 a utility that generates empty but compilable bodies for library units.
 
 @item
-@ref{Creating Unit Tests Using gnattest}, discusses @code{gnattest},
+@ref{Creating Unit Tests with gnattest}, discusses @code{gnattest},
 a utility that generates unit testing templates for library units.
 
 @item
@@ -1056,7 +1024,7 @@ Alternatively, if you want to rename your files according to this default
 convention, which is probably more convenient if you will be using GNAT
 for all your compilations, then the @code{gnatchop} utility
 can be used to generate correctly-named source files
-(@pxref{Renaming Files Using gnatchop}).
+(@pxref{Renaming Files with gnatchop}).
 
 You can compile the program using the following command (@code{$} is used
 as the command prompt in the examples in this document):
@@ -1993,7 +1961,7 @@ can specify the exact file names that you want used, as described
 in the next section. Finally, if your Ada programs are migrating from a
 compiler with a different naming convention, you can use the gnatchop
 utility to produce source files that follow the GNAT naming conventions.
-(For details @pxref{Renaming Files Using gnatchop}.)
+(For details @pxref{Renaming Files with gnatchop}.)
 
 Note: in the case of @code{Windows NT/XP} or @code{OpenVMS} operating
 systems, case is not significant. So for example on @code{Windows XP}
@@ -3725,8 +3693,8 @@ GNAT uses the current directory for temporary files.
 @end ifset
 
 @c *************************
-@node Compiling With gcc
-@chapter Compiling With @command{gcc}
+@node Compiling with gcc
+@chapter Compiling with @command{gcc}
 
 @noindent
 This chapter discusses how to compile Ada programs using the @command{gcc}
@@ -7015,7 +6983,7 @@ on subprogram calls and generic instantiations.
 Note that @option{-gnatE} is not necessary for safety, because in the
 default mode, GNAT ensures statically that the checks would not fail.
 For full details of the effect and use of this switch,
-@xref{Compiling With gcc}.
+@xref{Compiling with gcc}.
 
 @item -fstack-check
 @cindex @option{-fstack-check} (@command{gcc})
@@ -7084,7 +7052,7 @@ Normally, GNAT allows only a single unit in a source file. However, this
 restriction does not apply in syntax-check-only mode, and it is possible
 to check a file containing multiple compilation units concatenated
 together. This is primarily used by the @code{gnatchop} utility
-(@pxref{Renaming Files Using gnatchop}).
+(@pxref{Renaming Files with gnatchop}).
 @end table
 
 @node Using gcc for Semantic Checking
@@ -7859,7 +7827,7 @@ preprocessing.
 
 @noindent
 The actual preprocessing function is described in details in section
-@ref{Preprocessing Using gnatprep}. This section only describes how integrated
+@ref{Preprocessing with gnatprep}. This section only describes how integrated
 preprocessing is triggered and parameterized.
 
 @table @code
@@ -8207,8 +8175,8 @@ Compile the subunit in file @file{abc-def.adb} in semantic-checking-only
 mode.
 @end table
 
-@node Binding With gnatbind
-@chapter Binding With @code{gnatbind}
+@node Binding with gnatbind
+@chapter Binding with @code{gnatbind}
 @findex gnatbind
 
 @menu
@@ -9203,8 +9171,8 @@ since gnatlink will not be able to find the generated file.
 @end table
 
 @c ------------------------------------
-@node Linking With gnatlink
-@chapter Linking With @command{gnatlink}
+@node Linking with gnatlink
+@chapter Linking with @command{gnatlink}
 @c ------------------------------------
 @findex gnatlink
 
@@ -11560,8 +11528,8 @@ It can be observed that the procedure @code{Unused} and the object
 appropriate options.
 
 @c ********************************
-@node Renaming Files Using gnatchop
-@chapter Renaming Files Using @code{gnatchop}
+@node Renaming Files with gnatchop
+@chapter Renaming Files with @code{gnatchop}
 @findex gnatchop
 
 @noindent
@@ -11918,6 +11886,11 @@ unit will be skipped.
 @cindex Configuration pragmas
 @cindex Pragmas, configuration
 
+@menu
+* Handling of Configuration Pragmas::
+* The Configuration Pragmas Files::
+@end menu
+
 @noindent
 Configuration pragmas include those pragmas described as
 such in the Ada Reference Manual, as well as
@@ -11994,14 +11967,8 @@ recognized by GNAT:
    Validity_Checks
    Warnings
    Wide_Character_Encoding
-
 @end smallexample
 
-@menu
-* Handling of Configuration Pragmas::
-* The Configuration Pragmas Files::
-@end menu
-
 @node Handling of Configuration Pragmas
 @section Handling of Configuration Pragmas
 
@@ -12090,8 +12057,8 @@ predefined package SYSTEM all the additional types and subprograms that are
 defined in HP Ada. See @ref{Compatibility with HP Ada} for details.
 @end ifset
 
-@node Handling Arbitrary File Naming Conventions Using gnatname
-@chapter Handling Arbitrary File Naming Conventions Using @code{gnatname}
+@node Handling Arbitrary File Naming Conventions with gnatname
+@chapter Handling Arbitrary File Naming Conventions with @code{gnatname}
 @cindex Arbitrary File Naming Conventions
 
 @menu
@@ -13967,6 +13934,11 @@ point to any character in the middle of the identifier.
 @findex gnatpp
 @cindex Pretty-Printer
 
+@menu
+* Switches for gnatpp::
+* Formatting Rules::
+@end menu
+
 @noindent
 ^The @command{gnatpp} tool^GNAT PRETTY^ is an ASIS-based utility
 for source reformatting / pretty-printing.
@@ -14027,11 +13999,6 @@ use the @option{-gnat05} switch if sources should be compiled in
 Ada 2005 mode  etc.
 @end itemize
 
-@menu
-* Switches for gnatpp::
-* Formatting Rules::
-@end menu
-
 @node Switches for gnatpp
 @section Switches for @command{gnatpp}
 
@@ -15137,8 +15104,8 @@ end Test;
 @end smallexample
 
 @c *********************************
-@node The GNAT Metric Tool gnatmetric
-@chapter The GNAT Metric Tool @command{gnatmetric}
+@node The GNAT Metrics Tool gnatmetric
+@chapter The GNAT Metrics Tool @command{gnatmetric}
 @findex gnatmetric
 @cindex Metric tool
 
@@ -15149,6 +15116,10 @@ It takes an Ada source file as input and generates a file containing the
 metrics data as output. Various switches control which
 metrics are computed and output.
 
+@menu
+* Switches for gnatmetric::
+@end menu
+
 @command{gnatmetric} generates and uses the ASIS
 tree for the input source and thus requires the input to be syntactically and
 semantically legal.
@@ -15201,10 +15172,6 @@ use the @option{-gnat05} switch if sources should be compiled in
 Ada 2005 mode etc.
 @end itemize
 
-@menu
-* Switches for gnatmetric::
-@end menu
-
 @node Switches for gnatmetric
 @section Switches for @command{gnatmetric}
 
@@ -16076,8 +16043,8 @@ the @option{-U} option followed by the name of the main unit:
 
 
 @c ***********************************
-@node File Name Krunching Using gnatkr
-@chapter File Name Krunching Using @code{gnatkr}
+@node File Name Krunching with gnatkr
+@chapter File Name Krunching with @code{gnatkr}
 @findex gnatkr
 
 @noindent
@@ -16292,8 +16259,8 @@ $ gnatkr very_long_unit_name.ads/count=6 --> vlunna.ads
 $ gnatkr very_long_unit_name.ads/count=0 --> very_long_unit_name.ads
 @end smallexample
 
-@node Preprocessing Using gnatprep
-@chapter Preprocessing Using @code{gnatprep}
+@node Preprocessing with gnatprep
+@chapter Preprocessing with @code{gnatprep}
 @findex gnatprep
 
 @noindent
@@ -16889,8 +16856,8 @@ GNU:[LIB.OPENVMS7_1.2_8_1.ADALIB]unchconv.ads
 @end smallexample
 @end ifset
 
-@node Cleaning Up Using gnatclean
-@chapter Cleaning Up Using @code{gnatclean}
+@node Cleaning Up with gnatclean
+@chapter Cleaning Up with @code{gnatclean}
 @findex gnatclean
 @cindex Cleaning tool
 
@@ -18743,8 +18710,8 @@ stack usage reports at run-time. See its body for the details.
 @c *********************************
 @c *            GNATCHECK          *
 @c *********************************
-@node Verifying Properties Using gnatcheck
-@chapter Verifying Properties Using @command{gnatcheck}
+@node Verifying Properties with gnatcheck
+@chapter Verifying Properties with @command{gnatcheck}
 @findex gnatcheck
 @cindex @command{gnatcheck}
 
@@ -18765,8 +18732,8 @@ For full details, refer to @cite{GNATcheck Reference Manual} document.
 
 
 @c *********************************
-@node Creating Sample Bodies Using gnatstub
-@chapter Creating Sample Bodies Using @command{gnatstub}
+@node Creating Sample Bodies with gnatstub
+@chapter Creating Sample Bodies with @command{gnatstub}
 @findex gnatstub
 
 @noindent
@@ -18974,8 +18941,8 @@ Verbose mode: generate version information.
 @end table
 
 @c *********************************
-@node Creating Unit Tests Using gnattest
-@chapter Creating Unit Tests Using @command{gnattest}
+@node Creating Unit Tests with gnattest
+@chapter Creating Unit Tests with @command{gnattest}
 @findex gnattest
 
 @noindent
@@ -20269,12 +20236,12 @@ This chapter describes how to use @code{gcov} - coverage testing tool - and
 @code{gprof} - profiler tool - on your Ada programs.
 
 @menu
-* Code Coverage of Ada Programs using gcov::
-* Profiling an Ada Program using gprof::
+* Code Coverage of Ada Programs with gcov::
+* Profiling an Ada Program with gprof::
 @end menu
 
-@node Code Coverage of Ada Programs using gcov
-@section Code Coverage of Ada Programs using gcov
+@node Code Coverage of Ada Programs with gcov
+@section Code Coverage of Ada Programs with gcov
 @cindex gcov
 @cindex -fprofile-arcs
 @cindex -ftest-coverage
@@ -20361,8 +20328,8 @@ text file, and provide this file to gcov as a parameter,  preceded by a @@
 Note that on AIX compiling a static library with @code{-fprofile-arcs} is
 not supported as there can be unresolved symbols during the final link.
 
-@node Profiling an Ada Program using gprof
-@section Profiling an Ada Program using gprof
+@node Profiling an Ada Program with gprof
+@section Profiling an Ada Program with gprof
 @cindex gprof
 @cindex -pg
 @cindex Profiling
@@ -20587,7 +20554,7 @@ the incorrect user program.
 * Ada Exceptions::
 * Ada Tasks::
 * Debugging Generic Units::
-* Remote Debugging using gdbserver::
+* Remote Debugging with gdbserver::
 * GNAT Abnormal Termination or Failure to Terminate::
 * Naming Conventions for GNAT Source Files::
 * Getting Internal Debugging Information::
@@ -21045,9 +21012,9 @@ When the breakpoint occurs, you can step through the code of the
 instance in the normal manner and examine the values of local variables, as for
 other units.
 
-@node Remote Debugging using gdbserver
-@section Remote Debugging using gdbserver
-@cindex Remote Debugging using gdbserver
+@node Remote Debugging with gdbserver
+@section Remote Debugging with gdbserver
+@cindex Remote Debugging with gdbserver
 
 @noindent
 On platforms where gdbserver is supported, it is possible to use this tool
@@ -27238,7 +27205,7 @@ The preprocessor may be used in two separate modes. It can be used quite
 separately from the compiler, to generate a separate output source file
 that is then fed to the compiler as a separate step. This is the
 @code{gnatprep} utility, whose use is fully described in
-@ref{Preprocessing Using gnatprep}.
+@ref{Preprocessing with gnatprep}.
 @cindex @code{gnatprep}
 
 The preprocessing language allows such constructs as
@@ -29656,12 +29623,6 @@ end API;
 @end group
 @end smallexample
 
-@noindent
-Note that a variable is
-@strong{always imported with a DLL convention}. A function
-can have @code{C} or @code{Stdcall} convention.
-(@pxref{Windows Calling Conventions}).
-
 @node Creating an Import Library
 @subsection Creating an Import Library
 @cindex Import library
index efeb8960a4e334406e37ddc72748e00e4649ce28..bb62264c66b168115cf239ec7ce37c1b0188a0cf 100644 (file)
@@ -6,7 +6,7 @@
 --                                                                          --
 --                                 B o d y                                  --
 --                                                                          --
---           Copyright (C) 2000-2012, Free Software Foundation, Inc.        --
+--           Copyright (C) 2000-2013, Free Software Foundation, Inc.        --
 --                                                                          --
 -- GNAT is free software;  you can  redistribute it  and/or modify it under --
 -- terms of the  GNU General Public License as published  by the Free Soft- --
@@ -380,7 +380,14 @@ package body Impunit is
     ("s-ststop", F),  -- System.Strings.Stream_Ops
     ("s-tasinf", F),  -- System.Task_Info
     ("s-wchcnv", F),  -- System.Wch_Cnv
-    ("s-wchcon", F)); -- System.Wch_Con
+    ("s-wchcon", F),  -- System.Wch_Con
+
+   --  The following are strictly speaking Ada 2012 units, but we are allowed
+   --  to add children to system, so we consider them to be implementation
+   --  defined additions to System in earlier versions of Ada.
+
+    ("s-multip", T),  -- System.Multiprocessors
+    ("s-mudido", T)); -- System.Multiprocessors.Dispatching_Domains
 
    --------------------
    -- Ada 2005 Units --
@@ -544,8 +551,6 @@ package body Impunit is
    --  The following units should be used only in Ada 2012 mode
 
    Non_Imp_File_Names_12 : constant File_List := (
-    ("s-multip", T),  -- System.Multiprocessors
-    ("s-mudido", T),  -- System.Multiprocessors.Dispatching_Domains
     ("s-stposu", T),  -- System.Storage_Pools.Subpools
     ("a-cobove", T),  -- Ada.Containers.Bounded_Vectors
     ("a-cbdlli", T),  -- Ada.Containers.Bounded_Doubly_Linked_Lists
index 15f98bfcfb336f6b793a2d6e9008de5e61b48c17..d52a13d6c5b2fd10cd2136076ff1899ad3c203a6 100644 (file)
@@ -6,7 +6,7 @@
 --                                                                          --
 --                                 B o d y                                  --
 --                                                                          --
---          Copyright (C) 1992-2011, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2013, Free Software Foundation, Inc.         --
 --                                                                          --
 -- GNAT is free software;  you can  redistribute it  and/or modify it under --
 -- terms of the  GNU General Public License as published  by the Free Soft- --
@@ -138,6 +138,7 @@ package body Ch7 is
          end if;
 
          T_Body;
+         Scope.Table (Scope.Last).Sloc := Token_Ptr;
          Name_Node := P_Defining_Program_Unit_Name;
          Scope.Table (Scope.Last).Labl := Name_Node;
          TF_Is;
@@ -182,6 +183,7 @@ package body Ch7 is
       --  Cases other than Package_Body
 
       else
+         Scope.Table (Scope.Last).Sloc := Token_Ptr;
          Name_Node := P_Defining_Program_Unit_Name;
          Scope.Table (Scope.Last).Labl := Name_Node;
 
index 1d233e026b7edc4d4853c201e86cf747f593c260..b3b117576ddbb56d3410e10909c0faca1c514df4 100644 (file)
@@ -3456,8 +3456,12 @@ package body Sem_Prag is
             end if;
 
             --  Give message if needed if we fall through those tests
+            --  except on Relaxed_RM_Semantics where we let go: either this
+            --  is a case accepted/ignored by other Ada compilers (e.g.
+            --  a mix of Convention and Import), or another error will be
+            --  generated later (e.g. using both Import and Export).
 
-            if Err then
+            if Err and not Relaxed_RM_Semantics then
                Error_Pragma_Arg
                  ("at most one Convention/Export/Import pragma is allowed",
                   Arg2);
index 6699b418328ae85c818f7ae498ac74df047017b3..db08f0d4e7bc6ed7b9f334b8888a0b7b1bfb8aa2 100755 (executable)
@@ -487,18 +487,26 @@ begin
       pragma Import (C, save_argv);
       --  Saved value of argv (argument pointers), imported from misc.c
 
-      function Len_Arg (Arg : Pos) return Nat;
-      --  Determine length of argument number Arg on original gnat1 command
-      --  line.
+      gnat_argc : Nat;
+      gnat_argv : Arg_Array_Ptr;
+      pragma Import (C, gnat_argc);
+      pragma Import (C, gnat_argv);
+      --  If save_argv is not set, default to gnat_argc/argv
+
+      argc : Nat;
+      argv : Arg_Array_Ptr;
+
+      function Len_Arg (Arg : Big_String_Ptr) return Nat;
+      --  Determine length of argument Arg (a nul terminated C string).
 
       -------------
       -- Len_Arg --
       -------------
 
-      function Len_Arg (Arg : Pos) return Nat is
+      function Len_Arg (Arg : Big_String_Ptr) return Nat is
       begin
          for J in 1 .. Nat'Last loop
-            if save_argv (Arg).all (Natural (J)) = ASCII.NUL then
+            if Arg (Natural (J)) = ASCII.NUL then
                return J - 1;
             end if;
          end loop;
@@ -507,12 +515,21 @@ begin
       end Len_Arg;
 
    begin
+      if save_argv /= null then
+         argv := save_argv;
+         argc := save_argc;
+      else
+         --  Case of a non gcc compiler, e.g. gnat2why or gnat2scil
+         argv := gnat_argv;
+         argc := gnat_argc;
+      end if;
+
       --  Loop through arguments looking for -gnateT, also look for -gnatd.b
 
-      for Arg in 1 .. save_argc - 1 loop
+      for Arg in 1 .. argc - 1 loop
          declare
-            Argv_Ptr : constant Big_String_Ptr := save_argv (Arg);
-            Argv_Len : constant Nat            := Len_Arg (Arg);
+            Argv_Ptr : constant Big_String_Ptr := argv (Arg);
+            Argv_Len : constant Nat            := Len_Arg (Argv_Ptr);
 
          begin
             if Argv_Len > 8
index 9102507230ab8bb70d699bcfb730fddfc8e7d0b8..9ab79c77e6419cef8b186caf86166372a9f0da43 100644 (file)
@@ -652,8 +652,7 @@ package body Switch.C is
                   when 't' =>
                      if not First_Switch then
                         Osint.Fail
-                          ("-gnatet must be first if combined with "
-                           & "other switches");
+                          ("-gnatet must not be combined with other switches");
                      end if;
 
                      --  Check for '='
@@ -674,8 +673,7 @@ package body Switch.C is
                   when 'T' =>
                      if not First_Switch then
                         Osint.Fail
-                          ("-gnateT must be first if combined with "
-                           & "other switches");
+                          ("-gnateT must not be combined with other switches");
                      end if;
 
                      --  Check for '='