## MLton 20241230

# LineDirective

To aid in the debugging of code produced by program generators such as Noweb, MLton supports comments with line directives of the form

    (*#line l.c "f"*)

Here, l and c are sequences of decimal digits and f is the source file. The first character of a source file has the position 1.1. A line directive causes the front end to believe that the character following the right parenthesis is at the line and column of the specified file. A line directive only affects the reporting of error messages and does not affect program semantics (except for functions like `MLton.Exn.history` that report source file positions). Syntactically invalid line directives are ignored. To prevent incompatibilities with SML, the file name may not contain the character sequence `*)`.