!.t.e.s.t. Comments
! comment
!.e.o.f.


!.t.e.s.t. Identifiers
a _ab aB2 2a x
yZ
z
!.e.o.f.


!.t.e.s.t. Character Literals
'' 'a' '' '\'' '\\' '\\\'' '\n' 'a
!.e.o.f.


!.t.e.s.t. String Literals
"" "a"
"\" "
"\\"
"\\\\\\\"\""
"\n\" \"a
!.e.o.f.


!.t.e.s.t. Number Literals
0 00 09 1 12 0L 1l 12L 0x1 0xf 0XdE 0Xbcy 09.5 1.5f 2.5d 6d 7e3 6.1E-7f 0xa.5dp+12d .3
!.e.o.f.


!.t.e.s.t. Keywords
access
action
advance
allocatable
allocate
apostrophe
assignment
backspace
blank
block

blockdata
call
case
character
close
common
complex
contains
continue
cycle
data

deallocate
default
delim
dimension
direct
do
double
doubleprecision
elemental
else
elseif

elsewhere
end
endassociate
endblock
endblockdata
enddo
endenum
end
endfile
endforall
endfunction
endif

endinterface
endmap
endmodule
endprogram
endselect
endstructure
endsubroutine
endtype
endunion
endwhere
entry
eor
equivalance

err
exist
exit
external
file
file
forall
form
format
formatted

function
go
goto
if
implicit
in
include
inout
inquire
integer

intent
interface
intrinsic
iostat
kind
len
logical
map
module
name
named

namelist
nextrec
nml
none
nullify
number
only
open
opened
operator

optional
out
pad
parameter
pointer
position
precision
print
private
procedure

program
public
pure
quote
read
read
readwrite
real
rec
recl

recursive
result
return
rewind
save
select
selectcase
selecttype
sequence
sequential
size
size

stat
status
stop
structure
subroutine
target
then
to
type
unformatted
union
use

where
while
write
write

!.t.e.s.t. Operators Keyword Operators
eq
ne
lt
le
gt
ge
and
or
not
eqv
neqv
true
false
!.e.o.f.

!.t.e.s.t. Operators
**
*
/
+
-
//
==
/=
<
<=
>
>=
!.e.o.f.

!.t.e.s.t. Special Characters
=
.
,
:
(
)
''
!
""
%
&
;
?
$
!.e.o.f.

!.t.e.s.t. Non-keywords
abstracta assertx b br car dou doubl finall im i ifa inti throwsx
!.e.o.f.