FOR_C

FC FAQs
FC Examples

FC Extensions
License-Single
License - Group
HOME

Cobalt Blue Logo
FOR_C
Extensions & C Compilers

 

FORTRAN Extensions Supported:

Standard
FORTRAN-77
 
MILSPEC Extensions (MIL-STD-1753): Bit Functions, Octal and Hex Constants, DO WHILE-ENDDO, IMPLICIT NONE, INCLUDE.

(NOTE: All MILSPEC extensions have been grandfathered into Fortran-90)

Fortran-90 Extensions: Binary Constants, multiple statements per line, EXIT and CYCLE, Relational Operators <, <=, = =, <>, >, >=
VAX Extensions: Tab formatting with inline comments denoted by '!'

Debug lines, denoted by a 'D' in column 1, (aka, DLINES)

Length specifiers after type keywords, (e.g. INTEGER*1, 2 & 4), as well as after the name typed

Initialization in type statements with the "/constant_list/" construct

BYTE, COMPLEX*16, DOUBLE COMPLEX, and REAL*16 types

STRUCTURE, RECORD, UNION and MAP support (plus %FILL())

DO ENDDO constructs

Integers may be used with logical operators (resulting in bitwise operations), likewise logicals may be used in integer expressions

Loosely typed expressions (e.g. reals may be used in place of integer subscripts, integers and holleriths may be mixed with character expressions)

VAX FORTRAN-77 octal and hex constants ('777'0 and 'XXX'X respectively)

VAX intrinsic functions extensions

ACCEPT and TYPE statements

VIRTUAL statement

Parenthesis-less form of the PARAMETER statement

Internal list directed READ and WRITE statements

Selected I/O specifier extensions in the OPEN and CLOSE statements

%DESCR(), %REF(), %VAL() built-in argument functions, along with null arguments, and the %LOC() built-in function.

Selected constant intrinsic calls in DATA and PARAMETER statements

'O', 'Z', 'Q', and '$' FORMAT edits

DICTIONARY statement treated as functionally equivalent to the INCLUDE, plus numerous other extensions!

Initialization in type statements, Length specifiers following type keywords, (e.g. INTEGER*1), Mixed character and integer types, REAL*16, Tab Formatting, '!' inline comments, VAX STRUCTURE, UNION, MAP and RECORD, VAX Octal and Hex, plus PDP Octal Constants, %REF(), %LOC(), %VAL(), %DESCR().  

MAX(), MIN(), MOD(), ICHAR(), IOR(), IAND(), IEOR(), NOT(), and ISHFT() are not allowed in PARAMETER statements.

Various I/O specifiers and variable format expressions, Logical name support in INCLUDE filenames.

Support for IBM-VS,  Microsoft, and other extensions: IBM-VS EXTENSIONS:

The VS form of the INCLUDE; VS DATA statement extensions for true, false, and hexadecimal constants; various DEBUG directives; WAIT statement is passed through.

FORTRAN to C

C Compilers supported by FOR_C:

We generate ANSI C 89 source, and supply the runtime in ANSI C source.   ANSI C is widely supported on LINUX, UNIX, VAX-VMS, plus several proprietary  platforms.

We have ported the FOR_C package and runtime to the following compilers:

UNIX System V C: Sun C (bundled with SUN-OS 4.1x)
In turn, our users have also ported the translated code and runtime library to:
GNU C, Think C on the Mac, OS/2, Symantec C/C++, plus various mini and mainframe C compilers.