]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
[multiple changes]
authorArnaud Charlet <charlet@gcc.gnu.org>
Thu, 4 Oct 2012 09:05:53 +0000 (11:05 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Thu, 4 Oct 2012 09:05:53 +0000 (11:05 +0200)
2012-10-04  Vincent Celier  <celier@adacore.com>

* prj-proc.adb (Process_Package_Declaration): Use project
directory display path name as the value of 'Project_Dir.

2012-10-04  Gary Dismukes  <dismukes@adacore.com>

* exp_util.adb (Build_Allocate_Deallocate_Proc): The subpool can be
given by an arbitrary name, so copy the tree to make the call's actual.

2012-10-04  Robert Dewar  <dewar@adacore.com>

* s-exnllf.adb, s-exnllf.ads: Minor reformatting.

2012-10-04  Thomas Quinot  <quinot@adacore.com>

* exp_ch6.adb: Minor reformatting.

2012-10-04  Pascal Obry  <obry@adacore.com>

* projects.texi: Use consistently @command{} when referencing
commands. Fix typos.

From-SVN: r192068

gcc/ada/ChangeLog
gcc/ada/exp_ch6.adb
gcc/ada/exp_util.adb
gcc/ada/prj-proc.adb
gcc/ada/projects.texi
gcc/ada/s-exnllf.adb
gcc/ada/s-exnllf.ads

index d11055f81db9b21195732340c80cd42f2a1e9935..db728dd1694bbb3aec1c61a2dc2cc319002a0909 100644 (file)
@@ -1,3 +1,26 @@
+2012-10-04  Vincent Celier  <celier@adacore.com>
+
+       * prj-proc.adb (Process_Package_Declaration): Use project
+       directory display path name as the value of 'Project_Dir.
+
+2012-10-04  Gary Dismukes  <dismukes@adacore.com>
+
+       * exp_util.adb (Build_Allocate_Deallocate_Proc): The subpool can be
+       given by an arbitrary name, so copy the tree to make the call's actual.
+
+2012-10-04  Robert Dewar  <dewar@adacore.com>
+
+       * s-exnllf.adb, s-exnllf.ads: Minor reformatting.
+
+2012-10-04  Thomas Quinot  <quinot@adacore.com>
+
+       * exp_ch6.adb: Minor reformatting.
+
+2012-10-04  Pascal Obry  <obry@adacore.com>
+
+       * projects.texi: Use consistently @command{} when referencing
+       commands. Fix typos.
+
 2012-10-03  Ed Schonberg  <schonberg@adacore.com>
 
        * sem_ch6.adb (New_Overloaded_Entity): call
index 2fac2a3bffc4f963bf25d47119c169a1c4c4d889..8d9ef9b38dd5360bcb04d18d2d7f382efe97fb4e 100644 (file)
@@ -1217,8 +1217,8 @@ package body Exp_Ch6 is
                  and then
                    Present (Effective_Extra_Accessibility (Entity (Lhs)))
                then
-                  --  Copyback target is an Ada 2012 stand-alone object
-                  --  of an anonymous access type
+                  --  Copyback target is an Ada 2012 stand-alone object of an
+                  --  anonymous access type.
 
                   pragma Assert (Ada_Version >= Ada_2012);
 
@@ -3046,7 +3046,7 @@ package body Exp_Ch6 is
                   Set_Last_Assignment (Ent, Sav);
                   Set_Is_Known_Valid (Ent, False);
 
-                  --  For all other cases, just kill the current values
+               --  For all other cases, just kill the current values
 
                else
                   Kill_Current_Values (Ent);
@@ -3201,7 +3201,7 @@ package body Exp_Ch6 is
          end;
       end if;
 
-      --  If we are expanding a rhs of an assignment we need to check if tag
+      --  If we are expanding the RHS of an assignment we need to check if tag
       --  propagation is needed. You might expect this processing to be in
       --  Analyze_Assignment but has to be done earlier (bottom-up) because the
       --  assignment might be transformed to a declaration for an unconstrained
@@ -4219,9 +4219,7 @@ package body Exp_Ch6 is
          Ret : Node_Id;
 
       begin
-         if Is_Entity_Name (N)
-           and then Present (Entity (N))
-         then
+         if Is_Entity_Name (N) and then Present (Entity (N)) then
             E := Entity (N);
 
             if Is_Formal (E)
index cb397a24d7144e975df03587674242346c1f7f53..82b054adfcea3a9f36c305a542694d86ac747891 100644 (file)
@@ -710,8 +710,11 @@ package body Exp_Util is
                Subpool := Subpool_Handle_Name (Expr);
             end if;
 
+            --  If a subpool is present it can be an arbitrary name, so make
+            --  the actual by copying the tree.
+
             if Present (Subpool) then
-               Append_To (Actuals, New_Reference_To (Entity (Subpool), Loc));
+               Append_To (Actuals, New_Copy_Tree (Subpool, New_Sloc => Loc));
             else
                Append_To (Actuals, Make_Null (Loc));
             end if;
index 1d5c7738e5205c09b90f150a461ee08a0a7251be..19a92e9a8b68d114cfef18d6ca684d4ec6bc7ebd 100644 (file)
@@ -1588,7 +1588,7 @@ package body Prj.Proc is
                   Add_Attributes
                     (Project,
                      Project.Name,
-                     Name_Id (Project.Directory.Name),
+                     Name_Id (Project.Directory.Display_Name),
                      Shared,
                      Shared.Packages.Table (New_Pkg).Decl,
                      First_Attribute_Of
index 2fff4eb1fab037841db656211943b72a8986e332..fafb1d125ded3d7c1785d796a297fc35748125a4 100644 (file)
@@ -1033,7 +1033,7 @@ names in lower case)
 After building an application or a library it is often required to
 install it into the development environment. This installation is
 required if the library is to be used by another application for
-example. The @code{gprinstall} tool provide an easy way to install
+example. The @command{gprinstall} tool provide an easy way to install
 libraries, executable or object code generated durting the build. The
 @b{Install} package can be used to change the default locations.
 
@@ -1963,11 +1963,10 @@ included in the library.
 @c ---------------------------------------------
 
 @noindent
-When using project files, library installation is part of the library build
-process. Thus no further action is needed in order to make use of the
-libraries that are built as part of the general application build. A usable
-version of the library is installed in the directory specified by the
-@code{Library_Dir} attribute of the library project file.
+When using project files, a usable version of the library is created in the
+directory specified by the @code{Library_Dir} attribute of the library
+project file. Thus no further action is needed in order to make use of
+the libraries that are built as part of the general application build.
 
 You may want to install a library in a context different from where the library
 is built. This situation arises with third party suppliers, who may want
@@ -1976,6 +1975,12 @@ able to recompile the library. The simplest option in this case is to provide
 a project file slightly different from the one used to build the library, by
 using the @code{externally_built} attribute. @ref{Using Library Projects}
 
+Another option is to use @command{gprinstall} to install the library in a
+different context than the build location. A project to use this library is
+generated automatically by @command{gprinstall} which also copy, in the install
+location, the minimum set of sources needed to use the library.
+@ref{Installation}
+
 @c ---------------------------------------------
 @node Project Extension
 @section Project Extension
@@ -2243,8 +2248,8 @@ Very often, modules will build their own executables (for testing
 purposes for instance), or libraries (for easier reuse in various
 contexts).
 
-However, if you build your project through gnatmake or gprbuild, using
-a syntax similar to
+However, if you build your project through @command{gnatmake} or
+@command{gprbuild}, using a syntax similar to
 
 @smallexample
    gprbuild -PA.gpr
@@ -2252,9 +2257,9 @@ a syntax similar to
 
 this will only rebuild the main programs of project A, not those of the
 imported projects B and C. Therefore you have to spawn several
-gnatmake commands, one per project, to build all executables.
+@command{gnatmake} commands, one per project, to build all executables.
 This is a little inconvenient, but more importantly is inefficient
-because gnatmake needs to do duplicate work to ensure that sources are
+because @command{gnatmake} needs to do duplicate work to ensure that sources are
 up-to-date, and cannot easily compile things in parallel when using
 the -j switch.
 
@@ -2295,14 +2300,14 @@ that are built independently from each other (but can be built in
 parallel). For instance, you have a project tree rooted at A, and
 another one (which might share some subprojects) rooted at B.
 
-Using only gprbuild, you could do
+Using only @command{gprbuild}, you could do
 
 @smallexample
   gprbuild -PA.gpr
   gprbuild -PB.gpr
 @end smallexample
 
-to build both. But again, gprbuild has to do some duplicate work for
+to build both. But again, @command{gprbuild} has to do some duplicate work for
 those files that are shared between the two, and cannot truly build
 things in parallel efficiently.
 
@@ -2316,7 +2321,7 @@ sources.
 
 This scenario is particularly useful in environments like VxWorks 653
 where the applications running in the multiple partitions can be built
-in parallel through a single gprbuild command. This also works nicely
+in parallel through a single @command{gprbuild} command. This also works nicely
 with Annex E.
 
 @c ---------------------------------------------
@@ -2324,9 +2329,9 @@ with Annex E.
 @subsection Define a build environment
 @c ---------------------------------------------
 
-The environment variables at the time you launch gprbuild or gprbuild
-will influence the view these tools have of the project (PATH to find
-the compiler, ADA_PROJECT_PATH or GPR_PROJECT_PATH to find the
+The environment variables at the time you launch @command{gprbuild} or
+@command{gnatmake} will influence the view these tools have of the project
+(PATH to find the compiler, ADA_PROJECT_PATH or GPR_PROJECT_PATH to find the
 projects, environment variables that are referenced in project files
 through the "external" statement,...). Several command line switches
 can be used to override those (-X or -aP), but on some systems and
@@ -2382,19 +2387,19 @@ end MyProject;
 @subsection Performance improvements in builder
 @c --------------------------------------------
 
-The loading of aggregate projects is optimized in gprbuild and
-gnatmake, so that all files are searched for only once on the disk
+The loading of aggregate projects is optimized in @command{gprbuild} and
+@command{gnatmake}, so that all files are searched for only once on the disk
 (thus reducing the number of system calls and contributing to faster
 compilation times especially on systems with sources on remote
-servers). As part of the loading, gprbuild and gnatmake compute how
-and where a source file should be compiled, and even if it is found
+servers). As part of the loading, @command{gprbuild} and @command{gnatmake}
+compute how and where a source file should be compiled, and even if it is found
 several times in the aggregated projects it will be compiled only
 once.
 
 Since there is no ambiguity as to which switches should be used, files
 can be compiled in parallel (through the usual -j switch) and this can
 be done while maximizing the use of CPUs (compared to launching
-multiple gprbuild and gnatmake commands in parallel).
+multiple @command{gprbuild} and @command{gnatmake} commands in parallel).
 
 @c -------------------------------------
 @node Syntax of aggregate projects
@@ -2577,15 +2582,15 @@ These override the value given by the attribute, so that
 users can override the value set in the (presumably shared
 with others in his team) aggregate project.
 
-@item The -X command line switch to gprbuild and gnatmake
+@item The -X command line switch to @command{gprbuild} and @command{gnatmake}
 
 This always takes precedence.
 
 @end itemize
 
 This attribute is only taken into account in the main aggregate
-project (i.e. the one specified on the command line to gprbuild or
-natmake), and ignored in other aggregate projects. It is invalid
+project (i.e. the one specified on the command line to @command{gprbuild} or
+@command{gnatmake}), and ignored in other aggregate projects. It is invalid
 in standard projects.
 The goal is to have a consistent value in all
 projects that are built through the aggregate, which would not
@@ -2610,8 +2615,8 @@ are valid:
 @item @b{Switches}:
 @cindex @code{Switches}
 This attribute gives the list of switches to use for the builder
-(gprbuild or gnatmake), depending on the language of the main file.
-For instance,
+(@command{gprbuild} or @command{gnatmake}), depending on the language of the
+main file. For instance,
 
 @smallexample @c projectfile
 for Switches ("Ada") use ("-d", "-p");
@@ -2995,7 +3000,7 @@ from other project or library project files.
 @item @b{library}: a library project must declare both attributes
   @code{Library_Name} and @code{Library_Dir}.
 @item @b{configuration}: a configuration project cannot be in a project tree.
-  It describes compilers and other tools to @code{gprbuild}.
+  It describes compilers and other tools to @command{gprbuild}.
 @end table
 
 @c ---------------------------------------------
@@ -3263,7 +3268,7 @@ Here are some specific examples:
 @noindent
 An external value is an expression whose value is obtained from the command
 that invoked the processing of the current project file (typically a
-gnatmake or gprbuild command).
+@command{gnatmake} or @command{gprbuild} command).
 
 There are two kinds of external values, one that returns a single string, and
 one that returns a string list.
@@ -3878,11 +3883,12 @@ Follow all symbolic links when processing project files.
 
 @item ^--subdirs^/SUBDIRS^=<subdir>
 @cindex @option{^--subdirs^/SUBDIRS^=} (gnatmake and gnatclean)
-This switch is recognized by gnatmake and gnatclean. It indicate that the real
-directories (except the source directories) are the subdirectories <subdir>
-of the directories specified in the project files. This applies in particular
-to object directories, library directories and exec directories. If the
-subdirectories do not exist, they are created automatically.
+This switch is recognized by @command{gnatmake} and @command{gnatclean}. It
+indicate that the real directories (except the source directories) are the
+subdirectories <subdir> of the directories specified in the project files.
+This applies in particular to object directories, library directories and
+exec directories. If the subdirectories do not exist, they are created
+automatically.
 
 @end table
 
@@ -4592,7 +4598,7 @@ e.g.@: @code{"wtx"} or @code{"vxworks"}.
 This is an associative array attribute, whose domain is a language name. Its
 value is  string that denotes the command to be used to invoke the compiler.
 The value of @code{Compiler_Command ("Ada")} is expected to be compatible with
-gnatmake, in particular in the handling of switches.
+@command{gnatmake}, in particular in the handling of switches.
 
 @item Debugger_Command
 This is simple attribute, Its value is a string that specifies the name of
index a1e59c179e0f4eb751ac1bd5b7045d8790b66f5e..c6765e8fe9a9576f42c7027506e1ec656d16d5d1 100644 (file)
@@ -6,7 +6,7 @@
 --                                                                          --
 --                                 B o d y                                  --
 --                                                                          --
---          Copyright (C) 1992-2009 Free Software Foundation, Inc.          --
+--          Copyright (C) 1992-2012, 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- --
@@ -37,8 +37,7 @@ package body System.Exn_LLF is
 
    function Exn_Long_Long_Float
      (Left  : Long_Long_Float;
-      Right : Integer)
-      return  Long_Long_Float
+      Right : Integer) return Long_Long_Float
    is
       Result : Long_Long_Float := 1.0;
       Factor : Long_Long_Float := Left;
index 59575b0e08809501b6e0b81c1e989021f6d6f856..ba2828277b70ff4d738df7e2129da40df3831cb3 100644 (file)
@@ -6,7 +6,7 @@
 --                                                                          --
 --                                 S p e c                                  --
 --                                                                          --
---          Copyright (C) 1992-2009 Free Software Foundation, Inc.          --
+--          Copyright (C) 1992-2012, 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- --
@@ -36,7 +36,6 @@ package System.Exn_LLF is
 
    function Exn_Long_Long_Float
      (Left  : Long_Long_Float;
-      Right : Integer)
-      return  Long_Long_Float;
+      Right : Integer) return Long_Long_Float;
 
 end System.Exn_LLF;