# allow

Determines whether the compiler allows certain behaviors.

## Syntax

Linux: | -allow keyword

macOS: | -allow keyword

Windows: | /allow:keyword

## Arguments

keyword | Specifies the behaviors to allow or disallow. Possible values are:
[no]fpp_comments | Determines how the fpp preprocessor treats Fortran end-of-line comments in preprocessor directive lines.

## Default

fpp_comments | The compiler recognizes Fortran-style end-of-line comments in preprocessor lines.

## Description

This option determines whether the compiler allows certain behaviors.

Option | Description
--- | ---
allow nofpp_comments | Tells the compiler to disallow Fortran-style end-of-line comments on preprocessor lines. Comment indicators have no special meaning.

## IDE Equivalent

None

## Alternate Options

None

## Example

Consider the following:

    #define MAX_ELEMENTS 100  ! Maximum number of elements

By default, the compiler recognizes Fortran-style end-of-line comments on preprocessor lines. Therefore, the line above defines MAX_ELEMENTS to be "100" and the rest of the line is ignored. If allow nofpp_comments is specified, Fortran comment conventions are not used and the comment indicator "!" has no special meaning. So, in the above example, "! Maximum number of elements" is interpreted as part of the value for the MAX_ELEMENTS definition.

Option allow nofpp_comments can be useful when you want to have a Fortran directive as a define value; for example:

    #define dline(routname) !dir$ attributes alias:"__routname":: routname

Parent topic: Language Options