File: sect10.html

package info (click to toggle)
ftnchek 2.11.2-2
  • links: PTS
  • area: main
  • in suites: potato
  • size: 5,392 kB
  • ctags: 2,790
  • sloc: ansic: 21,570; fortran: 2,921; yacc: 2,794; sh: 1,623; makefile: 693; lisp: 264; awk: 163
file content (68 lines) | stat: -rw-r--r-- 5,156 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
<HTML>
<HEAD>
<TITLE>New Features</TITLE>
</HEAD>
<BODY>
<A HREF="toc.html">Table of Contents</A><P>
<P>Previous: <A HREF="sect9.html">Limitations  and Extensions</A><HR><P>
<H2><A NAME="sect10" HREF="toc.html#toc10">New Features </A></H2>
Here are the changes from Version 2.10 to Version 2.11: 
<OL>
.<LI>New 
checks for aliasing of subprogram arguments to other arguments and to 
COMMON variables.  These warnings are controlled by new options <B><A HREF="usage.html">-usage</A>=arg-alias 
</B>, <B><A HREF="usage.html">-usage</A>=arg-array-alias </B>, <B><A HREF="usage.html">-usage</A>=arg-common-alias </B>, and <B><A HREF="usage.html">-usage</A>=arg-common-array-alias 
</B>.  Note: These new checks necessitated a change in project-file format, 
so project files created with earlier versions of <B>ftnchek </B> are incompatible 
and will need to be re-created. </LI>.<LI>Added a new setting: <B><A HREF="errors.html">-errors</A>= </B><I>num </I> that  
sets the limit on the number of error messages in a ``cascade,'' formerly 
fixed at 3. </LI>.<LI>Changed the following options from numeric to option-list form: 
<B><A HREF="arguments.html">-arguments</A> </B>, <B><A HREF="array.html">-array</A> </B>, <B><A HREF="calltree.html">-calltree</A> </B>, <B><A HREF="common.html">-common</A> </B>, <B><A HREF="makedcls.html">-makedcls</A> </B>, and <B><A HREF="source.html">-source</A> </B>.  The earlier 
numeric form is still accepted, but the newer forms give more detailed 
control over warnings. </LI>.<LI>Fixed bug: an INCLUDE file specified using a relative 
path is now searched for relative to the directory of the source file 
(before searching in the directories given by <B><A HREF="include.html">-include</A> </B>). Previously it 
was searched for relative to the working directory of the <B>ftnchek </B> process. 
 (The new code is fully correct only for Unix; for VMS and MS-DOS/Windows 
the code may have some loopholes that I am unaware of, while for MacOS 
and other OSes, it is not attempted. I would appreciate assistance from 
anyone who has experience writing such code for these other OSes.) </LI>.<LI>The 
Fortran 90 DO  ... ENDDO  construct, as well as the CYCLE  and EXIT  statements, 
are now fully supported, including construct names.  Construct names are 
also accepted on IF , THEN , ELSE , and ENDIF  statements. Warnings about 
the use of construct names is controlled by a new flag <B><A HREF="f77.html">-f77</A>=construct-name 
</B>. </LI>.<LI>Added recognition of the Fortran 90 relational operators &lt; &lt;= == /= &gt; &gt;= 
 .  Warnings about use of these is controlled by a new flag <B><A HREF="f77.html">-f77</A>=relops 
</B>. </LI>.<LI>Added checking for embedded space in multi-character operators such as 
// .  This warning is controlled by the existing flag <B><A HREF="pretty.html">-pretty</A>=embedded-space 
</B>. </LI>.<LI>Changed the treatment of DEC-Fortran style PARAMETER  statements (which 
lack parentheses) so that the parameter's data type is that of the value 
assigned, rather than being given by the first letter of the parameter 
name.  (Thanks to Richard Maine for his illuminating discussion of this 
issue on comp.lang.fortran, 11 July 1999.)  The treatment can be made to 
follow the same rule as standard parameters by the flag <B><A HREF="source.html">-source</A>=dec-parameter-standard-type 
</B>. </LI>.<LI>Fixed bug in  handling of #line  directives that caused erroneous line 
numbers and file names to appear in error messages. </LI>.<LI>Fixed bug that could 
cause erroneous warnings saying ``Subprogram %MAIN multiply defined''. </LI>.<LI>Fixed 
the listing of common block references generated by <B><A HREF="crossref.html">-crossref</A> </B>, so that 
the blocks are listed in alphabetical order. Previously the modules referencing 
each block were sorted, but the blocks themselves were printed in the 
order of occurrence in the source file. </LI>.<LI>Added recognition of Fortran-90 
I/O keywords and one IBM/MVS I/O keyword, as described above in the documentation 
of the <B><A HREF="f77.html">-f77</A> </B> flag. Definitions of these keywords, ready for iokeywds.h, were 
kindly provided by Jean-Pierre Rouits.  New warning options for these are 
<B><A HREF="f77.html">-f77</A>=io-keywords </B> and <B><A HREF="f90.html">-f90</A>=io-keywords </B> to warn about non-F77 and non-F90 I/O 
keywords respectively. </LI>.<LI>Changed the Makefile target for installing man pages 
under SGI IRIX, so that hopefully it will do the right thing on current 
as well as older versions of that system.  Users of IRIX are invited to 
send corrections if it is still not right. </LI>.<LI>Unbundled shell_mung.c from the 
distribution, due to a license conflict. This file is only needed for the 
VMS version, and is available separately. </LI>.<LI>Fixed minor bug in creation of 
project files that could cause slight variations in results depending 
on whether the project file was created in an <B>ftnchek </B> run that processed 
multiple source files as opposed to being created in individual runs. </LI>
</OL>
 

<P><HR><P>Next: <A HREF="sect11.html">Bugs </A>
</BODY></HTML>