mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-27 21:06:06 +00:00
58 lines
2.3 KiB
Markdown
58 lines
2.3 KiB
Markdown
![]() |
Extensions, deletions, and legacy features supported
|
||
|
====================================================
|
||
|
|
||
|
* Tabs in source
|
||
|
* `<>` as synonym for `.NE.` and `/=`
|
||
|
* `$` and `@` as legal characters in names
|
||
|
* `.T.` and `.F.`
|
||
|
* Initialization in type declaration statements using `/values/`
|
||
|
* Kind specification with `*`, e.g. `REAL*4`
|
||
|
* `DOUBLE COMPLEX`
|
||
|
* Signed complex literal constants
|
||
|
* `.XOR.` as predefined operator (can be overridden)
|
||
|
* `.N.`, `.A.`, `.O.`, `.X.` predefined operator synonyms
|
||
|
* `STRUCTURE`, `RECORD`, `UNION`, and `MAP`
|
||
|
* Structure field access with `.field`
|
||
|
* `NCHARACTER` type and `NC` Kanji character literals
|
||
|
* `BYTE` as synonym for `INTEGER(KIND=1)`
|
||
|
* Quad precision REAL literals with `Q`
|
||
|
* `X` prefix/suffix as synonym for `Z` on hexadecimal literals
|
||
|
* `B`, `O`, `Z`, and `X` accepted as suffixes as well as prefixes
|
||
|
* Triplets allowed in array constructors
|
||
|
* Old-style `PARAMETER pi=3.14` statement (no parentheses)
|
||
|
* `%LOC`, `%VAL`, and `%REF`
|
||
|
* Leading comma allowed before I/O item list
|
||
|
* Empty parentheses allowed in `PROGRAM P()`
|
||
|
* Missing parentheses allowed in `FUNCTION F`
|
||
|
* Cray based `POINTER(p,x)`
|
||
|
* Arithmetic `IF`. (Which branch with NaN take?)
|
||
|
* `ASSIGN` statement, assigned `GO TO`, and assigned format
|
||
|
* `PAUSE` statement
|
||
|
* Hollerith literals and edit descriptors
|
||
|
* `NAMELIST` allowed in the execution part
|
||
|
* Omitted colons on type declaration statements with attributes
|
||
|
* COMPLEX constructor expression, e.g. `(x+y,z)`
|
||
|
* `+` and `-` before all primary expressions, e.g. `x*-y`
|
||
|
* `.NOT. .NOT.` accepted
|
||
|
* `NAME=` as synonym for `FILE=`
|
||
|
* `DISPOSE=`
|
||
|
* Data edit descriptors without width or other details
|
||
|
* Backslash escape character sequences in quoted character literals
|
||
|
* `D` lines in fixed form as comments or debug code
|
||
|
|
||
|
Extensions and legacy features deliberately not supported
|
||
|
---------------------------------------------------------
|
||
|
* `.LG.` as synonym for `.NE.`
|
||
|
* `REDIMENSION`
|
||
|
* Allocatable `COMMON`
|
||
|
* Expressions in formats
|
||
|
* `ACCEPT` as synonym for `READ *`
|
||
|
* `ARRAY` as synonym for `DIMENSION`
|
||
|
* `VIRTUAL` as synonym for `DIMENSION`
|
||
|
* `ENCODE` and `DECODE` as synonyms for internal I/O
|
||
|
* `IMPLICIT AUTOMATIC`, `IMPLICIT STATIC`
|
||
|
* Default exponent of zero, e.g. `3.14159E`
|
||
|
* Characters in defined operators that are neither letters nor digits
|
||
|
* `B` suffix on unquoted octal constants
|
||
|
* `Z` prefix on unquoted hexadecimal constants
|