Terug naar de homepage van Forcheck
History of changes

V14.0.17
Errors corrected:
-Error in namespace declaration in reference-structure .xml file.

Improvements:
-No path to .xsl stylesheet. Stylesheet must in the current directory for some browsers.
-Stylesheet (_fck_tree.xsl) for viewing .xml call-tree now also suitable for Mozilla FireFox.

V14.0.16
Errors corrected:
-for PC/Linux only: a listfile pathname with an extension beginning with f or F was treated
 as a source input file.

V14.0.15
Errors corrected:
-Incorrect handling of nested non-generic interfaces.

V14.0.14
Errors corrected:
-Incorrect message
 [620 E] dummy argument must not be defined
 if the intent in argument is a pointer of defined type and the lhs is a structure.

Improvements:
-Sequence in output of file and line number of lines with messages changed

V14.0.13
Improvements:
-Cross-reference table enlarged to 600.000 entries.

V14.0.12
Errors corrected:
-Incorrect messsage:
 344 I implicit conversion of constant (expression) to higher accuracy
 for constant and variabel of equal kind.

V14.0.11
Errors corrected:
-Verification of derived type of argument in reference of module procedure incorrect.
-Shape of array in designator not always correctly handled.

V14.0.10
Errors corrected:
-On PC/Linux: spurious hang-up if result clause present

V14.0.09
Improvements:
-On PC/Linux: more consistent handling of options and option values.

V14.0.08
Errors corrected:
-On PC/Linux: spurious problem with reading source files: end-of-file not always detected

IDE V14.0.03
-Reading of fck libraries corrected

V14.0.07, 2009-10-26
Improvements:
-Tab processing.
-Default pagewidth enlarged to 100.
-Accept, process and report longer lines than 132 in freeform.

V14.0.06, 2009-10-14
Improvements:
-Better and more consistent reporting of differences in specification of kind and type length.
 Now only if the rigorous option is specified.

V14.0.05, 2009-09-29
Impeovements:
-More accurate reporting of size of constants, derived types and variables.
 Pointers occupy 1 integer of kind address.

V14.0.04, 2009-09-21
Improvements:
-More efficient handling of USE in interface bodies.

V14.0.03, 2009-09-14
Errors corrected
-If a non allocatable, non pointer dummy argument is unlimited polymophic, the dummy argument may
 be of any type.

V14.0.02, 2009-09-03
Errors corrected:
-A DP argument is compatible with REAL*8 and REAL(8) .

V14.0.01, 2009-09-01
Errors corrected:
-Incorrect tag reading derived type during global program analysis.

V14.0.00, 2009-08-21
Launch of V14:
-Full Fortran 2003 support
-Various new compiler emulations

V13.7.34, 2009-06-16
Errors corrected:
-incorrect message
 [691 I] data-type length inconsistent with specification
 if an argument is imported from a module

V13.7.33, 2009-06-05
Errors corrected:
-incorrect message
 [539 E] procedure must have private accessibility
 for internal procedures
-spurious incorrect message
 [617 I] conditionally referenced argument is not defined
           (The inout dummy argument is not yet defined)
 when deep nesting of constructs, or many construct paths.

V13.7.32, 2009-05-29
Errors corrected:
-incorrect message
 [159 E] name already in use
 when importing a generic interface and a module procedure with the
 same name from a module

Improvements:
-Configuration file supplied for Intel Fortran 11.0

V13.7.31, 2009-05-11
Errors corrected:
-incorrect message
 [622 E] dummy function must be specified as entry argument
 in an internal subprogram

V13.7.30, 2009-04-09
Errors corrected:
-Spurious incorrect message:
**[269 E] malformed structure component
          (Only one of the part-refs can be an array name)
 when a part ref was an array ellement

V13.7.29, 2009-04-03
Errors corrected:
-Incorrect message
**[174 E] illegal usage of assumed-size array name
 while the actual argument was an array section

V13.7.28, 2009-03-09
Errors corrected:
-if the complete option was specified, not all data was imported from libraries,
 so the analysis and cross-reference of global module data failed.

V13.7.26, 2009-01-20
Errors corrected
-Rank of function actual argument was not set.
-Specific funtions not added if interface block within generic interface.
-Problem with clean-up of symbols after interface body.

V13.7.25, 2008-12-23
Errors corrected
-Import did not find accessible entities in host context of host context.
-Import of derived types from modules: original name not always kept.

V13.7.24, 2008-10-26
Errors corrected:
-interface name flagged if name already in PRIVATE or PUBLIC statement.
-incorrect message
 [293 E] initialization expression expected
 if a subscript of a constant array is omitted.
-spurious incorrect message
 [523 E] procedure already in list of specific procedures of this interface
 for imported module procedures
-incorrect message
 [582 E] data-type length inconsistent with specification
 if actual argument is of zero length and dummy argument is of assumed length.

V13.7.23, 2008-10-10
Errors corrected:
-The f03 option did flag a number of Fortran 2003 features incorrectly.
-Incorrect message:
 [275 E] derived type object must be of sequence type
 for imported derived type.
-In an interface block module procedure statements and interface bodies may be in any order.

V13.7.22, 2008-10-02
Errors corrected:
-spurious incorrect message
 [315 I]  redefined before referenced
 after referencing a procedure which references a variable in the host context of a module procedure.

V13,7.21, 2008-09-26
Errors corrected:
-incorrect message
 [328 I] array or character variable is zero sized
 when referencing an array section of an allocated array and lower bound not specified. 
-spurious incorrect message
 [573 E] data type inconsistent with specification
 for the derived type of an argument of a module procedure.

IDE V13.7.2
Errors corrected:
-Searching corrected

V13,7.20, 2008-08-21
Errors corrected:
-Variable, read through namelist, was flagged as not set.

V13.7.19, 2008-06-01
Errors corrected:
-module procedures which were declared private not in call-tree and
flagged as unreferenced.

Improvements:
-Message
[153 I] PUBLIC is already the default
was displayed twice.
- Message
[315 I] redefined before referenced
incorrect in data_implied do.

V13.7.18, 2008-05-10
Improvements:
-Search paths for relative include paths changed. Now we search:
1. relative to the source directory
2. relative to the working directory
3. in include paths listed in the Include path option
4. in the directories indicated in the environment variable INCLUDE
5. for unix: in the system include directory.

V13.7.17, 2008-05-05
-Parser error if . follows write(..)
-New compiler emulation file for Intel Fortran 10.0: Intel10.cnf.

V13.7.16, 2008-04-30
-Problem when analyzing a longer than standard line with subscripts:
 Forcheck did not finish

V13.7.15, 2008-04-24
-Improved verification of arguments:
 illegal assignment of actual arguments with intent(in).

V13.7.14, 2008-04-16
-Messages could not be read when include nesting was deep.

V13.7.13, 2008-03-28
-Defined operators not always found when DEC/VAX structures were
 enabled.

V13.7.12, 2008-02-07
Errors corrected:
-Reference of an array element of an array valued function within its function specification
 was interpreted as a recursive reference.
-ref of constant with same name as component within type definition was not recognized
 as such. 

V13.7.11, 2008-02-05
Improvements:
-Include files with / (unix path specification) accepted on Windows.

V13.7.10, 2008-02-04
Errors corrected:
-Minval, maxval, minloc, maxloc were not processed correctly when
 referenced with DIM or MASK keyword arguments.
-the rank of a structure with an array and a substring component was
 not always correctly evaluated.

V13.7.09, 2008-01-16
Errors corrected:
-The global reference table and reference structure (call tree) did not
 present the references of module procedures correctly.

V13.7.08, 2008-01-07
Improvements:
-Logging of meta symbol table usage.
-Suppression of reporting the definition of meta symbols.

Errors corrected:
-INCLUDE... without delimiter was interpreted as an INCLUDE statement

V13.7.07, 2007-12-21
Errors corrected:
-#define ON 1, #define OFF 0: ON and OFF were interpreted as keywords.

V13.7.06, 2007-12-18
Improvements:
-Maximum number of #defines increased to 500.

V13.7.05, 2007-12-09
Errors corrected
-Incorrect message
 [559 E] argument missing, or no corresponding actual argument found
 When referencing MINVAL with key arguments. 

V13.7.04, 2007-10-31
Errors corrected
-incorrect message [335 E] data type conflict
 because no specific was generated for a generic with zero arguments 

V13.7.03, 2007-08-13
Improvements:
-You can specify suppress='all' in the section "redefinition of messages" in the
 configuration file to suppress all diagnostic messages.
-Detection of recursive procedures which are not referenced recursively.

V13.7.2, 2007-06-10
Improvements:
-Passing character scalar actual arg. to a dummy array allowed:
 language extension 134
-Support of ERMSG= in [DE]ALLOCATE statement.
-INTENT allowed for POINTER dummy arguments:
 language extension 249

V13.7.1, 2007-06-04
Improvements:
-Namelist allowed on internal files for Fortran 2003
-Configuration file of NagF95 updated for V 5.1

IDE V13.7.0, 2007-06-01
Improvements:
-Backward search in list views.
-Search from cursor location.
-Set options for each selected file.
-Default freeform for .f90, f95 and f03 files.

V13.7.0, 2007-06-01
Improvements:
-Default freeform for .f90, f95 and f03 files.
-Lay out of listings: first column no longer printer control character.
-More efficient usage and faster access of cross-reference table.
-If cross-reference table is full, the objects are nevertheless listed.
-If a component name is not unique, the component is discarded and the 
 library file can still be read.
-Modules in interfaces are only imported in the first pass.
-Support of some new Fortran 2003 features.

V13.6.20, 2007-05-01
Improvements:
-message
 [673 I] not locally referenced
 only presented if variable was not saved in module.

Errors corrected:
-incorrect message
 [316 W] not locally defined, specify SAVE in the module to retain data
 if variable was saved in module.
-[319 W] not locally allocated, specify SAVE in the module to retain data
 if variable was saved in module.
-[378 W] pointer not locally associated, specify SAVE in the module
 if variable was saved in module.
-[669 I] not locally associated, specify SAVE in the module to retain data
 if variable was saved in module.

V13.6.19, 2007-04-22
Improvements:
-If an input/output argument is not assigned on entry and conditionally assigned before referenced,
 an information [618 I] is presented only and no error [616 E].
-incorrect message
 [219 E] illegally in COMMON, EQUIVALENCE, or NAMELIST
 for array pointers.

V13.6.18, 2007-04-08
Errors corrected:
-incorrect message
 [ 60 W] fixed source form used
 if /ob, or /f95 and include lines present.
-incorrect message
 [631 E] illegal argument data-type length for intrinsic procedure
 for SNGL with DP argument if the /dp option is in effect.

V13.6.17, 2007-03-26
Errors corrected:
-Intrinsic function SUM was not specified correctly.
-IMPLICIT did not work correctly in an interface block.

V13.6.16, 2007-03-20
Improvements:
-An interface block which defines the subprogram in which it is contained
 is now supported as language extension 236.

V13.6.15, 2007-03-02
Errors corrected:
-An array may be of assumed size if it is a target of an integer pointer.
-An integer pointer may be in common.

IDE V13.6.3, 2007-13-02
-Default compiler emulation file set to intel9.cnf

V13.6.14, 2007-02-05
Improvements
-Symbol table enlarged to 150000 symbols

V13.6.13, 2007-02-02
Errors corrected:
-Incorrect message
[549 I] referenced intrinsic procedure not declared INTRINSIC
When the "flag undeclared intrinsics" option is in effect and the intrinsic function is declared
INTRINSIC in an imported module.

V13.6.12, 2006-12-16
Errors corrected:
-Incorrect message:
[333 E] division by zero
If denominator is of type double precision and is less than minimal real.
-Incorrect message
[527 E] no matching specific procedure found
If generic interface is imported from various modules.
-Incorrect message
[539 E] procedure must have private accessibility
If type is imported, accessible but private in the current module.

V13.6.11, 2006-12-07
Errors corrected:
-Incorrect message
[312 E] no value assigned to this variable
for local variable in elsewhere block.
-Incorrect message
[317 E] entity imported from more than one module: do not use
for generic interfaces.

V13.6.10, 2006-11-20
Errors corrected:
-DO UBLEPRECISIONI=1,10 was incorrectly classified as an assignment statement.
-Incorrect message
[264 E] unknown structure component or field name
When referencing a structure of mutually dependant types.
-In a recursive procedure a reference of the recursive procedure with
keyed arguments did not function correctly.
-second argument of BTEST was incorrectly specified as optional.

Improvements:
-Reporting if intrinsic function is nonstandard when declaring.

V13.6.9, 2006-11-16
Improvements:
-[690 I] data-type length inconsistent with data-type length at first ref. and
[691 I] data-type length inconsistent with specification
now also for constants.

Errors corrected:
-storage of mutually dependant types did not function correctly.

V13.6.8, 2006-11-03
Errors corrected:
-Incorrect message
[690 I] data-type length inconsistent with data-type length at first ref.
If argument is an intrinsic function reference with a data-type kind 
depending on its arguments and one of these arguments is a numeric literal
constant.
-Array-valued specific functions were not handled correctly.

V13.6.7, 2006-10-28
Errors corrected:
-Error when parsing parenthesized expressions in an ac-implied do.
 (was not correctly solved in V13.6.6)
-Host-associated private or public object incorrectly classified as variable
 when it is a forward ref of a module procedure.
-Host-associated derived type reference in type initialization was not recognized as such.
-Original name of used associated type incorrectly read from library file.

V13.6.6, 2006-10-06
Improvements:
-Configuration file for G95, open source Fortran 95 based on GNU, added.

Errors corrected:
-CPU_TIME did only accept a default real argument, while each real kind should be allowed.
-Syntax error when parsing parenthesized expressions in an ac-implied do.
-In freeform input the first nonblank character of a continuation record in a
 character context must be an &.
-Incorrect error
 [271 E] derived type is inaccessible
 When a construct of a private type is referenced.

V13.6.5, 2006-10-01
Improvements:
-Detection of more than once imported from module of derived types.
Errors corrected:
-Incorrect handling of generic interface if specific procedure was imported
 from more than one module.

V13.6.4, 2006-09-13
Improvements:
-improved detection of illegal statement sequence in interface block.

Errors corrected:
-Incorrect message
 [351 E] illegal usage of operator
 if for a power of type complex.
-Forcheck did not handle a plain END statement (without SUBROUTINE or FUNCTION
 suffix) in interface body correctly.

V13.6.3, 2006-09-08
Improvements:
-Statement buffer enlarged to 20000
Errors corrected:

-Incorrect message
 312 E no value assigned to this variable
 in a construct block if the local variable is an actual argument within the
 IF or ELSEIF statement of the block.
-Incorrect message
 [580 E] data-type length inconsistent with first occurrence
 if actual argument is integer literal constant expression.

V13.6.2, 2006-07-27
Improvements:
-For Intel Fortran a pointee, in an integer pointer statement, may also
 be an external. Contrary to their documentation, for many other compilers
 the same holds.

Errors corrected:
-incorrect message:
 [707 I] module procedure not referenced from outside its module
 if module procedure is declared private.
-incorrect message:
 [557 I] dummy argument not used
 if the dummy argument is a pointer which is associated.
-incorrect message:
 [322 I] target not assigned with a pointer
 if the target has been pointer associated in a different procedure.

IDE V13.6.1, 2006-07-26
Improvements:
-The installation path can now also be specified by setting the environmental
variable FCKDIR.

V13.6.1, 2006-07-26
Changes and improvements:
-Detection of possibly not assigned improved (using the rigorous option).

Errors corrected:
-Number of references in internal table usage was incorrect
-Incorrect message:
[616 E] input or input/output argument is not defined
when the rigorous option is in effect and the argument has been defined
in a conditional path. Now changed into:
[618 I] input or input/output argument is possibly not defined
-Message:
[313 I] possibly no value assigned to this variable
Now presented only if the rigorous option is in effect.

V13.5.15, 2006-04-15
Errors corrected:
-Long pathnames were not accepted by the command string interpreter (Unix)
-Incorrect message:
[159 E] name already in use
at dimension specification for array valued functions.
-Array sections with a negative stride were not handled correctly.

V13.5.14, 2006-04-01
Errors corrected:
-incorrect message 601 if actual argument is pointer and dummy not.
-INOUT argument need not be defined on entry.

V13.5.13, 2006-03-14
Errors corrected:
-Module variables were in certain cases incorrectly reported as unused or
 unreferenced. Now only reported as locally unreferenced.
Changes and improvements:
-installation path and registry entries changed.

V13.5.12, 2006-02-23
Improvements:
-Stack size for analyzing the reference structure increased.

V13.5.11, 2006-01-20
Errors corrected:
-updated common-block list was incorrectly stored.
Improvements:
-message 220 explained.

V13.5.10, 2005-10-21
Errors corrected:
-IF cross-reference table was full, interfaces were not stored in the library.
-DIMENSION( : ) was not parsed correctly.
Improvements:
-support of allocatable dummy arguments (Fortran 2003): syntax extension 234.
-support of allocatable functions (Fortran 2003): syntax extension 235.
-support of Intel Fortran V9: intel9.cnf

V13.5.09, 2005-10-08
Errors corrected:
-Incorrect message: 
549 I referenced intrinsic procedure not declared INTRINSIC
while the generic function was declared intrinsic.

IDE V13.5.6, 2005-10-09
Errors corrected:
-PW and PL options got strange values initially.

V13.5.08, 2005-09-30
Errors corrected:
-Length of long names in library index not always correctly stored.
Improvements:
-Support of Gnu Fortran 95: gfortran.cnf
-Mixing of subroutines and functions in a generic interface is allowed in
Visual Fortran. Syntax extension 233.

FCKLIB V13.5
Errors corrected:
-Librarian did not function correctly.
-Librarian Adapted for long names.

IDE V13.5.5, 2005-09-30
Errors corrected:
-Librarian did not function correctly.

IDE V13.5.4, 2005-06-28
Errors corrected:
-Include directories, specified under preferences, had no effect.

V13.5.07, 2005-06-01
Errors corrected:
-Line numbers of some messages were incorrect
-Empty lines before program unit were not counted on some implementations (SGI)

V13.5.06, 2005-02-14
Improvements:
-Message 5 refined.
-Message 61 provided if only comment or non-included source lines were read.
-Message "Include nesting too deep": filename name reported.

V13.5.05, 2005-01-24
Errors corrected:
-When declaring a public or private object and forward referencing the object
 as a procedure, the operation codes of the argument list were not set in the
 first pass.

V13.5.04, 2005-01-13
Errors corrected:
-When forward referencing module procedures, the program cross-reference
 was incorrect.

V13.5.03, 2004-11-29
Improvements
-Support of VALUE with verification of constraints: extension 241.
-Support of allocatable components: extension 245

V13.5.02, 2004-10-24
Improvements:
-Support of Absoft Pro F90/95 V9.0 compiler: absoftf95.cnf.
-Support of VOLATILE statement and attribute: extension 62.
-Support of VALUE statement and attribute: extension 241.
-Support of PROTECTED statement and attribute: extension 239.
-Conversion from typeless constant to real not reported as implicit conversion
 to higher accuracy anymore.
-Initialization expression with boz constants as arguments of intrinsics
 allowed.
-Integer type def of integer pointer allowed.

Errors corrected:
-Spurious incorrect message 255.

V13.5.01, 2004-10-18
Improvements:
-Verification if continuation character is in Fortran character set was only
 active if -standard option was active. Now also verified if extension 11 is
 not in configuration file.
-illegal usage of boz constants was not always detected.
-Better re-usage of cross-reference table.
-Improved path-flow analysis with reporting of undefined variables.

Errors corrected:
-Spurious crash in the error message if an array dimension was too large to
 handle.
-Test on too many symbolic names was incorrect (in V13.4.07).
-Spurious incorrect message 159 when importing hidden procedures from a module.

V13.4.07, 2004-06-29
Improvements:
-More efficient usage of name table.

V13.4.06, 2004-06-20
Improvements:
-Verification of consistency of explicit length extended to real constant
 arguments and array constructors.
-Explicit length attribute of mixed-mode expressions improved.
-Improved discrimination between assigned variable and namelist group name
 in io-control-list.
-Message if referenced namelist group does not exists.
-Configuration file Laheyf95.cnf updated to V5.7.
-Name table enlarged

Error corrected:
-context of interfaces not in stack space. 

V13.4.05, 2004-05-01
Improvements:
-Message:
 [438 W] obsolescent terminal statement of DO loop
 presented in stead of
 [402 E] illegal terminal statement of loop
 if the terminal statement of a DO loop is not END DO or CONTINUE and the
 obsolescent, F90, or F95 option has been specified.

Errors corrected:
-Incorrect message
 [369 E] illegal assignment to pointer
 if the pointer is an actual argument and is assigned in the procedure.

V13.4.04, 2004-04-23
Improvements:
-Message:
 [145 I] implicit conversion to complex
 only activated if the rigorous option has been specified.
-Message:
 [344 I] implicit conversion of constant (expression) to higher accuracy
 replaced by
 [346 I] implicit conversion of integer to real
 if an integer is implicitly converted to a real in an expression and only
 presented if the rigorous option has been specified.
-Message
 [345 I] implicit conversion to less accurate data type
 replaced by
 [699 I] implicit conversion of real or complex to integer
 for implicit conversion to integer.

Errors corrected:
-AIMAG did not accept a dp complex argument in some compiler emulations.
 (take out the specific AIMAG in your configuration file)
-Path monitoring was not correct if statements separated with ;
-Incorrect message
 [184 E] multiple specification of attribute
 If accessibility of a non-declared object is specified.
-Undefined object now reported: message 700.

V13.4.03, 2004-04-16
Improvements:
-Message:
 [344 I] implicit conversion of constant (expression) to higher accuracy
 no longer presented if the constant (expression) is integer.
-Message:
 [698 I] implicit conversion to more accurate data type
 only activated if the rigorous option has been specified.

Errors corrected:
-Forcheck did not always generate the correct intrinsic function if the
 argument was an expression with an operand of nondefault kind.
-Mixed mode expressions with operands of the same data type but different
 kinds did not always yield the correct kind.

V13.4.02, 2004-04-09
Improvements:
-Syntax messages suppressed during file-scan. 
-cpp conditionals improved.

V13.4.01, 2004-03-29
Improvements:
-If an update library does not exists, it will be created.
 In interactive mode the user will be requested for conformation.

Errors corrected:
-PARAMETER1 = ' ' was not recognized as an assignment statement when the
 PARAMETER cnst=value extension was enabled.
-Problem with storing the derived type of an argument of a procedure interface
 when the derived type was originally imported as inaccessible. 

V13.4.00, 2004-03-01
-Release consolidation
Improvements:
-Option added to flag all specific intrinsic functions: /SF cq -spec.

V13.3.21, 2004-02-10
Improvements:
-Support of Portland Group Fortran 90: PGF90.cnf

V13.3.20, 2004-02-04
Errors corrected:
-Could not find specific function if type was host-associated and procedure not

V13.3.19, 2004-01-02
Improvements:
-Maximum number of symbols increased to 100000.
-Maximum number of contexts increased to 10000.

Errors corrected:
-Reporting of number of contexts corrected.

V13.3.18, 2003-12-18

Errors corrected:
-incor. tag reading interface from module corrected.

V13.3.17, 2003-12-15

Errors corrected:
-incorrect message
 [527 E] no matching specific procedure found
 if one af the arguments is an array constructor with an array element or
 array section component.

V13.3.16, 2003-11-27

Improvements:
-If IMPLICIT NONE has been specified in a Fortran 90 and up an undeclared
 object is flagged with an error message [697 E] instead of the warning 
 message [208 W].
-Improved reporting of illegal option arguments in unix command line. 

Errors corrected:
-";" is not allowed as the first nonblank character on a line, unless as
 a fixed form continuation character.
-If the (erroneous) statement after a statement separator consisted of one
 character only, it was not analyzed.
-incorrect message
 [360 E] each element in array constructor must be of the same data type
 if first element of array constructor is an array section or substring.
-incorrect message
 [691 I] data-type length inconsistent with specification
 if actual argument is a generic intrinsic function reference with a 
 data-type length which is determined by its argument.

IDE V13.0.1, 2003-11-12
Improvements:
-Serial number presented in about box.

V13.3.15, 2003-09-09

Improvements:
- message
 [695 E] no defined assignment supplied for this data type
 If a defined assignment for one or more of the derived type components
 is present. This message got lost in a previous release.

Errors corrected:
-Tabs in subprogram statement of internal and module procedures were not
 reported.
-incorrect reading of modules names from library files during importing
 interfaces (error in V13.3.14 only).

V13.3.14, 2003-08-25

Improvements:
-A message is presented if an internal or module subprogram does not start
 with a SUBROUTINE or FUNCTION statement.
-Message
 [314 I] possible change of initial value
 only presented if the rigorous option has been specified.
-Information if default accessibility is being explicitly specified.
 Specify the rigorous option to obtain this information.

Errors corrected:
-Incorrect message
 [317 E] entity imported from more than one module: do not use
-Reading derived types with components of inaccessible types from library
 file corrected.
-Filename in header of first subprogram in file was incorrect if previous
 file ended with one or more blank lines.
-In Fortran 90 and 95 a repeat is allowed with a / edit descriptor.
-Confirmation of accessibility allowed.

V13.3.13, 2003-08-04

Improvements:
-Symbolic name table increased to 1000000.

V13.3.12, 2003-07-23

Errors corrected:
- incorrect message
 [637 E] specific procedure has no unique argument list
 If the derived types of the arguments of a specific procedure
 are inaccessible (because of USE, ONLY clause).

V13.3.11, 2003-07-16

Errors corrected:
-An imported external procedure name has no explicit interface.
-Incorrect message
 [370 E] illegal target for a pointer
 If the target is a sub object of a pointer.

V13.3.10, 2003-07-09

Improvements:
-Reporting circular reference of modules through fatal system error.

Errors corrected:
-Incorrect message
 [370 E] illegal target for a pointer
 If the target is a structure component and one of the part-names is a
 pointer and the rightmost is not a pointer.
-Incorrect message
 [466 E] E more than once in OPEN, CLOSE, or INQUIRE list
 if the variable is a substring or structure component with an identical
 component.
-Incorrect message
 [671 E] E variable more than once in actual argument list
 if the variable is a structure component with an identical component.

V13.3.09, 2003-06-26

Improvements:
-Detection and reporting recursive reference of modules.

Errors corrected:
-Incorrect message
 [369 E] Illegal assignment to pointer
 If the argument of an intrinsic subroutine is a non-pointer component of a
 derived type and is assigned.
-Incorrect message
 [202 E] multiple specification of data type, this one ignored,
 for recursively referenced functions contained in a module.

V13.3.08, 2003-06-05

Improvements:

Errors corrected:
-When reporting errors in nested include files without making a listing,
 the line numbers where not always correct.
-Message 208, name not explicitly typed, implicit type assumed,
 promoted to warning.

V13.3.07, 2003-06-01

Improvements:

Errors corrected:
-Incorrect message
 [542 E] procedure must be pure
 If it is elemental.
-Incorrect message
 [ 19 O] (STRUCTURE/DERIVED TYPE NESTING TOO DEEP)
 if a derived type with a component of the same type was recursively forced to
 be included from a module while the type was already forced public.

V13.3.06, 2003-05-20

Improvements:
-Cross-reference table enlarged to 1000000
-Argument key table enlarged to 20000.
-Statement buffer enlarged to 10000.

Errors corrected:
-Spurious crash if intrinsic function was referenced with more then 5 arguments.

V13.3.05

Improvements:
-New xsl style sheet.
-Support of cpp preprocessing extended.

V13.3.04

Errors corrected:
-PUBLIC and PRIVATE did not work properly on operators and assignments.

V13.3.03

Errors corrected:
-Incorrect message
 [ 19 O] (STRUCTURE/DERIVED TYPE NESTING TOO DEEP)
 if a derived type with a component of the same type was recursively forced to
 be included from a module.

V13.3.02
Improvements:
-Message provided if /IP, or /DF is specified without arguments (PC).
-Message provided if -I, or -define is specified without arguments (unix).
-Buffer for INCLUDE environmental increased to 1024 (PC).

Errors corrected:
-An array element or section does not have the POINTER attribute of the array.
-If a dummy argument has the POINTER attribute, the actual argument must be
 a pointer.
-Incorrect message
 [ 19 O] (STRUCTURE/DERIVED TYPE NESTING TOO DEEP)
 if a derived type with a component of the same type was forced to be included
 from a module.

V13.3.01

Improvements:
-Support of array constructor [...] for Fortran 2000 and Intel Fortran:
 extension 109.
-Reference of _fck_tree.xsl: Installation path included.
-If TMPDIR not defined, temp files are stored in /tmp on unix systems.
-Floating point crash in handling RESHAPE on Alpha/Unix corrected.

V13.3.00
Improvements:
-Support of expressions in conditional compiler directives
-Support of cpp preprocessor directives: extension 7
-Support of Intel Fortran: intel.cnf

V13.2.02
Errors corrected:
-Incorrect message
 [159 E] name already in use
 if type name starts with the name of an intrinsic type

V13.2.01
Errors corrected:
-Array length of array section arguments corrected.
-Incorrect message:
 [165 E] illegal or nonstandard Fortran dimension specification
 For an assumed dimension specification with lower bounds specified.

Improvements:
-Better reporting of not supported name after END INTERFACE.
-Support of END INTERFACE name for SGI Fortran 90.

V13.2.00
-Password file format changed

V13.1.16
Errors corrected:
-If option noinf or nowarn was specified, the message explanation was still
 be presented.
-Incorrect tag reading interface with long name from library file corrected.

Improvements:
-If module not available the sequence of files to analysis has been modified
 to show the module which was not found.

V13.1.15
Errors corrected:
-Incorrect message:
 [531 I] function is impure
 If variable of derived type with pointer components in right hand site of
 assignment statement.

V13.1.14
Improvements:
-Signal unreferenced modules in interface bodies.
-Command line buffer enlarged to 1024 characters.

V13.1.13
Improvements:
-Support of C_EXTERNAL and Salford STDCALL, Fortran 77 extension 67
-FTN configuration files updated.
-SUN configuration files updated.
-Reference structure: present references in sequence of original occurrence.

V13.1.12
Improvements:
-Summary of messages presented: larger number of messages allowed.
-F77 extension 41 added: Length modifier (B,S,L) after integer and boz
 constants.
-FTN77 configuration file updated.

INTERF V13.1.04: -handling of adjustable array dimension.
                 -POINTER attribute added.

Improvements:
-Better flagging of some illegal dimension specifications.

V13.1.11
Errors corrected:
-If backslash editing enabled the length of strings with embedded apostrophes
 was not correctly determined.
-Storage of links to argument used in adjustable array dimension improved.

INTERF V13.1.03: -More arguments on one line corrected (empty line with &).
                 -declaration of EXTERNAL dummy argument without type corrected.
                 -verification of adjustable array dimension links.

V13.1.10
Errors corrected:
-Storage of link to argument used in adjustable array dimension.

INTERF V13.1.02: -Handling of adjustable array dimensions.
                 -More arguments on one line to avoid too many continuation lines.

V13.1.09
Errors corrected:
-Response to command line confirmations corrupted command line.
-INTERF: reading index corrected.

V13.1.09
Improvements:
-Storage of derived types and derived-type components for module procedures
 reduced.

V13.1.08
Errors corrected:
-Cleanup of symbol table for module procedures removed.
-During global analysis the reference of derived types of arguments was not
 always correct.
-Replacing of qualified names of derived types in symbol table corrected.
-Reading derived types with components of derived types from library file
 corrected. 

Improvements:
-Some more hints added.

V13.1.07
Errors corrected:
-Incorrect storage of derived type if in public statement before declaration
 of type and usage in module procedures.
-Progress report: program unit tags were missing.

V13.1.06
Errors corrected:
-Original name in module not read in correctly if name longer than 32 characters.
-Some errors retrieving long names from library file.

Windows IDE: V13.0.0.16
Errors corrected:
-List options preferences, such as include paths, were not always stored correctly.

V13.1.05
Errors corrected:
-Derived types in imported interface bodies were visible outside interface body.

V13.1.04
Improvements:
-Some improvements in importing modules in interface blocks.

Windows IDE: V13.0.0.15
Errors corrected:
-Preferences were not always stored correctly.

V13.1.03
Errors corrected:
-%LOC and LOC must accept array elements as argument.
-Incorrect message:
 [539 E] procedure must have private accessibility
 if the types of the arguments are imported locally from a module.

Improvements:
-Allow for the combination of pointee and target.
-Abort with fatal error if symbol table full.

V13.1.02
Errors corrected:
-Internal error when processing Fortran 90 operators.
-Incorrect message:
 [184 E] multiple specification of attribute
 If an external function name is used as a pointee in a POINTER() statement.
-A pointee can also be an external function name in Compaq Visual Fortran.
-LOC accepts also a procedure name as argument in Compaq Visual Fortran.
-Incorrect message:
 [691 I] data-type length inconsistent with specification
 for component of actual argument of an imported type.

V13.1.01
Improvements:
-Performance and memory requirements improved. Table sizes adjusted.

V13.0.01
General changes:
-In-line comment {..} and /*..*/ no longer supported (Prime and Domain
 Fortran resp.).

Improvements:
-Overlapping ranges in CASE statements verified for integers and logicals.
-Forall-index-name and ac-impl-do-var now in statement/block context.
-Variables in statement context not listed in cross-reference.
-Variables in statement context not imported from modules.
-Fortran 95 intrinsic subroutine CPU_TIME added.
-Better verification of constant and initialization expressions.
-Intrinsic procedure class added to the description of intrinsic procedures in
 emulation files: emulation files have been changed!
-INTENT for procedures with explicit interface used to verify and determine
 definition status of actual arguments.
-Redefinition before reference (message 315) now also detected for arrays.
-Derived type name not allowed as actual argument.
-Support of NAS Fortran Plus Fortran 95 compiler: NASF95.CNF.
-AbsoftF90.CNF updated.
-Message 276, derived type inconsistently included, augmented with name of
 program unit in which the type is being declared.
-The type of derived-type components is now also verified recursively.
-Generation of a report file.
-Suppression of specific messages using compiler directives.
-Better verification of type and type parameters of function entries.
-Detection of multiple initialization of an item in a specification statement.
-Message 500, no main program, if complete analysis and no main program.
-Detection of name clashes improved.
-Table sizes increased.
-Support of $IF, $ELSIF, $ELSE meta commands (Compaq VF), but only with simple
 expressons.
-Better detection of blanks in boz constants.
-Better support of combinations of legacy F77 syntax:
 Q, aQw format
 "xxx and "xxx"O octals
 type function name without argument list
-Detection of modification of pointer sub objects of intent(in) arguments.
-Error message 688 if implicit characteristics are inconsistent with those in
 host context.
-Verbose messages explaining the cause of messages presented.
-Better verification of constraints of statement functions.
-Verification of uniqueness of generic procedure reference: message 640.
-Improved detection of out of range constants.
-Verification of attributes of intrinsic function arguments ALLOCATED and
 ASSOCIATED.
-Verification of consistency of TARGET attribute of common-block objects.
-Intrinsic functions in DATA statements: language extension 83.
-Pointers in DATA statements: language extension 84.
-Specification functions in specification expressions: language extension 68.
-Comparison of explicitness and attributes between interfaces.
-Improved verification of name conflicts with a module name.
-The length of an actual argument must not be 0 if the dummy has an assumed
 length.
-More than once in OPEN/CLOSE/INQUIRE now accounts for equivalences.
-Option added to specify a file for output of the reference structure in XML.
 for PC: /RS:f, for unix: -refstruc file
-Filename and line number presented with diagnostic messages during subprogram
 analysis.
-Detection of not-allocated of allocatable array as actual argument.
-Message 695 added:
 Defined assignment required if a derived type component has a defined
 assignment.
-Improved verification of array and character arguments.
-Detection and reporting of more than once in namelist group.
-Support for names up to 64 characters long.
-Support of C-strings with embedded octal and hex constants.
-Command line buffer enlarged from 4086 to 65000 (unix).

Errors corrected:
-The type of pointer components of a derived type need not have been declared
 previously.
-Comparing derived types: the name of the derived type definition (the
 type-name in the module of origin) is now used to compare types.
-Definition of internal procedure makes host item with the same name
 inaccessible.
-It is ok to associate a character array actual argument with a dummy argument
 which is an assumed-shape character array with assumed-size length.
-If an associated variable of a function entry is assigned the function
 result becomes defined if they have the same type.
-When referencing a generic interface a generic interface with the same name
 in the host context must also be searched.
-If no match is found for a generic intrinsic, the host context must be
 searched for a generic procedure. with the same name.
-Resolving generic procedure references improved.
-If a generic intrinsic function is declared with a data type, that type has
 no effect.
-DO-var, stat-variable in ALLOCATE, iostat-variable in I/O statements are
 allowed to have the pointer attribute.
-Blank required after PRINT when literal format string follows.
-Incorrect verification of statement sequence in nested interfaces.
-Length of derived types with deferred shape components was incorrect.
-Function type-length not correctly set in
 type FUNCTION name*lng ()
-Length spec. in a character function statement may contain a dummy argument
 or common-block variable of which the type can be declared later.
-Separate import of the type of an object having a private type from the module
 which specifies that type.
-Renamed intrinsic procedures were not handled correctly.
-The same function result name may be specified in more than one entry.

INTERF:

Errors corrected:
-Assumed-size and adjustable dimension specs were not handled correctly.

previous page top page
Forcheck
Contact