The FOR2C® family of software translator tools convert existing Fortranprograms to C. The powerful dual conversion FOR2C® translators accept Fortranprograms in numerous dialects, check their syntax, analyze the syntax tree and generate C source code. Comments are moved transparently from the source file to the target file. Any built-in functions for math, string manipulation, and I/O in Fortranare converted to calls to external procedure. The translator family currently supports the following Fortran dialects: For other dialects or custom translation, please contact us for a price quote.
Dialect type 1: Fortran II
Dialect type 2: Fortran IV
Dialect type 3: Fortran V
Dialect type 4: Fortran 66
Dialect type 5: Fortran 77
Dialect type 6: Fortran 90
Dialect type 7: Fortran 95
Dialect type 8: Fortran 2003
Dialect type 9: Fortran 2008
Dialect type A: Fortran IBM704
Dialect type B: Fortran HP
Dialect type C: Fortran OpenMP
Dialect type D: Fortran PPF77
ORDER: FOR2C type x ( select one from above)
The FOR2C® translators contain a syntax analyzer, a Fortran to tertiary converter, and a tertiary to C converter. The syntax analyzer scans the Fortraninput file for syntactic errors and generates a listing file of the Fortranprogram. Any syntactic errors will be flagged with detailed English messages in the listing file. If no errors are encountered, then the Fortraninput file is converted to tertiary language.
The transfer of the Fortransource language into an intermediate tertiary language ensures the logical equivalence between the source and target languages. This tertiary language is common to the entire family of our translators. The tertiary language is automatically converted to C while maintaining the logical equivalence between the output C program and the input Fortranprogram.
Note: The number in the parentheses indicates the number of formats supported for this
* This statement is not translated. It is passed
through as a comment.
aligned area binary bit character complex decimal entry file fixed float format label member non varying offset picture pointer precision real structure union unaligned varying