Node: Transforming Statements, Next: , Previous: Challenges Posed, Up: Front End



Transforming Statements

Most Fortran statements are given their own block, and, for temporary variables they might need, their own scope. (A block is what distinguishes { foo (); } from just foo (); in C. A scope is included with every such block, providing a distinct name space for local variables.)

Label definitions for the statement precede this block, so 10 PRINT *, I is handled more like fl10: { ... } than { fl10: ... } (where fl10 is just a notation meaning "Fortran Label 10" for the purposes of this document).