OSDN Git Service

* decl2.c (maybe_emit_vtables): Produce same comdat group when outputting
[pf3gnuchains/gcc-fork.git] / gcc / ada / gnat_rm.texi
index 1c7f64e..84a95a7 100644 (file)
@@ -377,6 +377,10 @@ The GNAT Library
 * GNAT.Semaphores (g-semaph.ads)::
 * GNAT.Serial_Communications (g-sercom.ads)::
 * GNAT.SHA1 (g-sha1.ads)::
+* GNAT.SHA224 (g-sha224.ads)::
+* GNAT.SHA256 (g-sha256.ads)::
+* GNAT.SHA384 (g-sha384.ads)::
+* GNAT.SHA512 (g-sha512.ads)::
 * GNAT.Signals (g-signal.ads)::
 * GNAT.Sockets (g-socket.ads)::
 * GNAT.Source_Info (g-souinf.ads)::
@@ -4303,7 +4307,7 @@ name for the spec or for the body.
 The optional Index argument should be used when a file contains multiple
 units, and when you do not want to use @code{gnatchop} to separate then
 into multiple files (which is the recommended procedure to limit the
-number of recompilation that are needed when some sources change).
+number of recompilations that are needed when some sources change).
 For instance, if the source file @file{source.ada} contains
 
 @smallexample @c ada
@@ -5197,80 +5201,12 @@ The form with a single static_string_EXPRESSION argument provides more precise
 control over which warnings are active. The string is a list of letters
 specifying which warnings are to be activated and which deactivated. The
 code for these letters is the same as the string used in the command
-line switch controlling warnings. The following is a brief summary. For
+line switch controlling warnings. For a brief summary, use the gnatmake
+command with no arguments, which will generate usage information containing
+the list of warnings switches supported. For
 full details see @ref{Warning Message Control,,, gnat_ugn, @value{EDITION}
 User's Guide}.
 
-@smallexample
-a    turn on all optional warnings (except d h l .o)
-A    turn off all optional warnings
-.a*  turn on warnings for failing assertions
-.A   turn off warnings for failing assertions
-b    turn on warnings for bad fixed value (not multiple of small)
-B*   turn off warnings for bad fixed value (not multiple of small)
-.b*  turn on warnings for biased representation
-.B   turn off warnings for biased representation
-c    turn on warnings for constant conditional
-C*   turn off warnings for constant conditional
-.c   turn on warnings for unrepped components
-.C*  turn off warnings for unrepped components
-d    turn on warnings for implicit dereference
-D*   turn off warnings for implicit dereference
-e    treat all warnings as errors
-.e   turn on every optional warning
-f    turn on warnings for unreferenced formal
-F*   turn off warnings for unreferenced formal
-g*   turn on warnings for unrecognized pragma
-G    turn off warnings for unrecognized pragma
-h    turn on warnings for hiding variable
-H*   turn off warnings for hiding variable
-i*   turn on warnings for implementation unit
-I    turn off warnings for implementation unit
-j    turn on warnings for obsolescent (annex J) feature
-J*   turn off warnings for obsolescent (annex J) feature
-k    turn on warnings on constant variable
-K*   turn off warnings on constant variable
-l    turn on warnings for missing elaboration pragma
-L*   turn off warnings for missing elaboration pragma
-m    turn on warnings for variable assigned but not read
-M*   turn off warnings for variable assigned but not read
-n*   normal warning mode (cancels -gnatws/-gnatwe)
-o*   turn on warnings for address clause overlay
-O    turn off warnings for address clause overlay
-.o   turn on warnings for out parameters assigned but not read
-.O*  turn off warnings for out parameters assigned but not read
-p    turn on warnings for ineffective pragma Inline in frontend
-P*   turn off warnings for ineffective pragma Inline in frontend
-.p   turn on warnings for parameter ordering
-.P*  turn off warnings for parameter ordering
-q*   turn on warnings for questionable missing parentheses
-Q    turn off warnings for questionable missing parentheses
-r    turn on warnings for redundant construct
-R*   turn off warnings for redundant construct
-.r   turn on warnings for object renaming function
-.R*  turn off warnings for object renaming function
-s    suppress all warnings
-t    turn on warnings for tracking deleted code
-T*   turn off warnings for tracking deleted code
-u    turn on warnings for unused entity
-U*   turn off warnings for unused entity
-v*   turn on warnings for unassigned variable
-V    turn off warnings for unassigned variable
-w*   turn on warnings for wrong low bound assumption
-W    turn off warnings for wrong low bound assumption
-.w   turn on warnings for unnecessary Warnings Off pragmas
-.W*  turn off warnings for unnecessary Warnings Off pragmas
-x*   turn on warnings for export/import
-X    turn off warnings for export/import
-.x   turn on warnings for non-local exceptions
-.X*  turn off warnings for non-local exceptions
-y*   turn on warnings for Ada 2005 incompatibility
-Y    turn off warnings for Ada 2005 incompatibility
-z*   turn on convention/size/align warnings for unchecked conversion
-Z    turn off convention/size/align warnings for unchecked conversion
-*    indicates default in above list
-@end smallexample
-
 @noindent
 The specified warnings will be in effect until the end of the program
 or another pragma Warnings is encountered. The effect of the pragma is
@@ -5308,6 +5244,11 @@ pragma Warnings (On, Pattern);
 In this usage, the pattern string must match in the Off and On pragmas,
 and at least one matching warning must be suppressed.
 
+Note: the debug flag -gnatd.i (@code{/NOWARNINGS_PRAGMAS} in VMS) can be
+used to cause the compiler to entirely ignore all WARNINGS pragmas. This can
+be useful in checking whether obsolete pragmas in existing programs are hiding
+real problems.
+
 @node Pragma Weak_External
 @unnumberedsec Pragma Weak_External
 @findex Weak_External
@@ -13617,6 +13558,10 @@ of GNAT, and will generate a warning message.
 * GNAT.Semaphores (g-semaph.ads)::
 * GNAT.Serial_Communications (g-sercom.ads)::
 * GNAT.SHA1 (g-sha1.ads)::
+* GNAT.SHA224 (g-sha224.ads)::
+* GNAT.SHA256 (g-sha256.ads)::
+* GNAT.SHA384 (g-sha384.ads)::
+* GNAT.SHA512 (g-sha512.ads)::
 * GNAT.Signals (g-signal.ads)::
 * GNAT.Sockets (g-socket.ads)::
 * GNAT.Source_Info (g-souinf.ads)::
@@ -14614,7 +14559,40 @@ port. This is only supported on GNU/Linux and Windows.
 @cindex Secure Hash Algorithm SHA-1
 
 @noindent
-Implements the SHA-1 Secure Hash Algorithm as described in RFC 3174.
+Implements the SHA-1 Secure Hash Algorithm as described in FIPS PUB 180-3
+and RFC 3174.
+
+@node GNAT.SHA224 (g-sha224.ads)
+@section @code{GNAT.SHA224} (@file{g-sha224.ads})
+@cindex @code{GNAT.SHA224} (@file{g-sha224.ads})
+@cindex Secure Hash Algorithm SHA-224
+
+@noindent
+Implements the SHA-224 Secure Hash Algorithm as described in FIPS PUB 180-3.
+
+@node GNAT.SHA256 (g-sha256.ads)
+@section @code{GNAT.SHA256} (@file{g-sha256.ads})
+@cindex @code{GNAT.SHA256} (@file{g-sha256.ads})
+@cindex Secure Hash Algorithm SHA-256
+
+@noindent
+Implements the SHA-256 Secure Hash Algorithm as described in FIPS PUB 180-3.
+
+@node GNAT.SHA384 (g-sha384.ads)
+@section @code{GNAT.SHA384} (@file{g-sha384.ads})
+@cindex @code{GNAT.SHA384} (@file{g-sha384.ads})
+@cindex Secure Hash Algorithm SHA-384
+
+@noindent
+Implements the SHA-384 Secure Hash Algorithm as described in FIPS PUB 180-3.
+
+@node GNAT.SHA512 (g-sha512.ads)
+@section @code{GNAT.SHA512} (@file{g-sha512.ads})
+@cindex @code{GNAT.SHA512} (@file{g-sha512.ads})
+@cindex Secure Hash Algorithm SHA-512
+
+@noindent
+Implements the SHA-512 Secure Hash Algorithm as described in FIPS PUB 180-3.
 
 @node GNAT.Signals (g-signal.ads)
 @section @code{GNAT.Signals} (@file{g-signal.ads})
@@ -16476,7 +16454,7 @@ package_spec ::=
 package_identifier ::=
   @code{Naming} | @code{Builder} | @code{Compiler} | @code{Binder} |
   @code{Linker} | @code{Finder}  | @code{Cross_Reference} |
-  @code{gnatls} | @code{IDE}     | @code{Pretty_Printer}
+  @code{gnatls} | @code{IDE}     | @code{Pretty_Printer} | @code{Check}
 @end smallexample
 
 @subsection Package Naming
@@ -16797,6 +16775,25 @@ be called with the options specified by Default_Switches of its language,
 if defined.
 @end table
 
+@subsection package Check
+
+@noindent
+The attributes of package @code{Check}
+specify the checking rule options to be used
+when invoking the checking tool @command{gnatcheck}.
+The following attributes apply to package @code{Check}:
+
+@table @code
+@item     Default_switches
+This is an associative array attribute. Its
+domain is a set of language names. Its range is a string list that
+specifies options to be used when calling @command{gnatcheck} on a source
+written in that language. The first string in the range should always be
+@code{"-rules"} to specify that all the other options belong to the
+@code{-rules} section of the parameters of @command{gnatcheck} call.
+
+@end table
+
 @subsection package Pretty_Printer
 
 @noindent