+Wed May 26 11:45:21 1999 Craig Burley <craig@jcb-sc.com>
+
+ Rename -fsubscript-check to -fbounds-check and
+ -ff2c-subscript-check to -ffortran-bounds-check:
+ * g77.texi: Rename options in docs, clarify usage.
+ * lang-options.h: Rename options, clarify doclets.
+ * news.texi: Rename options, don't bother with fortran-specific
+ option.
+ * top.c (ffe_decode_option): Rename recognized strings.
+
Tue May 25 18:21:09 1999 Craig Burley <craig@jcb-sc.com>
* com.c (FFECOM_FASTER_ARRAY_REFS): Delete this vestige,
@c %**start of header
@setfilename g77.info
-@set last-update 1999-05-13
+@set last-update 1999-05-26
@set copyrights-g77 1995-1999
@include root.texi
-falias-check -fargument-alias
-fargument-noalias -fno-argument-noalias-global
-fno-globals -fflatten-arrays
--fsubscript-check -ff2c-subscript-check
+-fbounds-check -ffortran-bounds-check
@end smallexample
@end table
to evaluate code-generation issues.
It might be removed at any time.
-@cindex -fsubscript-check option
-@cindex -ff2c-subscript-check option
-@item -fsubscript-check
-@itemx -ff2c-subscript-check
+@cindex -fbounds-check option
+@cindex -ffortran-bounds-check option
+@item -fbounds-check
+@itemx -ffortran-bounds-check
@cindex bounds checking
@cindex range checking
@cindex array bounds checking
@code{g77} also generates checks for @code{CHARACTER} substring references,
something @code{f2c} currently does not do.
-Since a future version of @code{g77} might use a different implementation,
-use the new @samp{-ff2c-subscript-check} option
-if your application requires use of @code{s_rnge} or a compile-time diagnostic.
+Use the new @samp{-ffortran-bounds-check} option
+to specify bounds-checking for only the Fortran code you are compiling,
+not necessarily for code written in other languages.
@emph{Note:} To provide more detailed information on the offending subscript,
-@code{g77} provides @code{s_rnge}
+@code{g77} provides the @code{libg2c} run-time library routine @code{s_rnge}
with somewhat differently-formatted information.
Here's a sample diagnostic:
Overflowing the bounds of an array---usually by writing beyond
the end of it---is one of two kinds of bug that often occurs
in Fortran code.
-(Compile your code with the @samp{-fsubscript-check} option
+(Compile your code with the @samp{-fbounds-check} option
to catch many of these kinds of errors at program run time.)
The other kind of bug is a mismatch between the actual arguments
FTNOPT( "-fno-globals", "Disable fatal diagnostics about inter-procedural problems" )
FTNOPT( "-ftypeless-boz", "Make prefix-radix non-decimal constants be typeless" )
FTNOPT( "-fno-typeless-boz", "" )
-FTNOPT( "-fsubscript-check", "Generate code to check array-subscript ranges" )
-FTNOPT( "-fno-subscript-check", "" )
-FTNOPT( "-ff2c-subscript-check", "Generate f2c-like code to check array-subscript ranges")
-FTNOPT( "-fno-f2c-subscript-check", "" )
+FTNOPT( "-fbounds-check", "Generate code to check subscript and substring bounds" )
+FTNOPT( "-fno-bounds-check", "" )
+FTNOPT( "-ffortran-bounds-check", "Fortran-specific form of -fbounds-check")
+FTNOPT( "-fno-fortran-bounds-check", "" )
FTNOPT( "-Wglobals", "" )
FTNOPT( "-Wno-globals", "Disable warnings about inter-procedural problems" )
/*"-Wimplicit",*/
@c in the standalone derivations of this file (e.g. NEWS).
@set copyrights-news 1995-1999
-@set last-update-news 1999-05-13
+@set last-update-news 1999-05-26
@include root.texi
@end ifclear
@item
-The new @samp{-fsubscript-check} option
+The new @samp{-fbounds-check} option
causes @code{g77} to compile run-time bounds checks
of array subscripts, as well as of substring start and end points.
-The current implementation uses the @code{libf2c}
-library routine @code{s_rnge} to print the diagnostic.
-Since a future version of @code{g77} might use a different implementation,
-use the new @samp{-ff2c-subscript-check} option
-if your application requires use of @code{s_rnge} or a compile-time diagnostic.
-
@item
Source file names with the suffixes @samp{.FOR} and @samp{.FPP}
now are recognized by @code{g77}
ffe_set_is_globals (TRUE);
else if (strcmp (&opt[2], "no-globals") == 0)
ffe_set_is_globals (FALSE);
- else if (strcmp (&opt[2], "subscript-check") == 0)
+ else if (strcmp (&opt[2], "bounds-check") == 0)
ffe_set_is_subscript_check (TRUE);
- else if (strcmp (&opt[2], "no-subscript-check") == 0)
+ else if (strcmp (&opt[2], "no-bounds-check") == 0)
ffe_set_is_subscript_check (FALSE);
- else if (strcmp (&opt[2], "f2c-subscript-check") == 0)
+ else if (strcmp (&opt[2], "fortran-bounds-check") == 0)
ffe_set_is_subscript_check (TRUE);
- else if (strcmp (&opt[2], "no-f2c-subscript-check") == 0)
+ else if (strcmp (&opt[2], "no-fortran-bounds-check") == 0)
ffe_set_is_subscript_check (FALSE);
else if (strcmp (&opt[2], "typeless-boz") == 0)
ffe_set_is_typeless_boz (TRUE);