<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/121931>121931</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [flang] Preprocessor does not expand macros with commas in fixed form
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            flang
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          igarcia0
      </td>
    </tr>
</table>

<pre>
    The following code:
```fortran
#define a ,3
      program example
 print *, mod(5 a)
      end program example
```
fails to parse with `-cpp -ffixed-form`.

It does compile and run as expected with `-cpp -ffree-form`. `gfortran` and `ifort` do not fail in either case.

`-E` shows line 3 expanding to `print *, mod(5 ,3)` with `-ffree-form`, but remaining unexpanded with `-ffixed-form`.
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJxsUk2PmzAQ_TXmMkpkhpgNBw7pbiP11kP_gLEHcGVsZJvd7b-vhqTp1yIkxGjem_fejM7ZTYGoF-qTUC-V3socU-8mnYzTshqi_dF_mwnG6H18c2ECEy2J5iLkRbTy9o4xlaQDl7CxNLpAoEHgcyPkBfZnTXFKegF618vqietrcqGAwIvAZ1iiFXhWoAV2DxAF-wHwMVbIy6idz1AirDplgjdXZhCtPJh1hcM4uneyhzGmRbTyyFB5-VLARspg4rI6T6CDhbQF0BnofSVTyP5Hk4geLFyffhlu5Y4XrXRc4n8bIcQCLAxcAHJlpgRGZ7oLYN7P3Jnn-JbBc1gNz9bBcr4lMt-H4eyJYsfgh8S_1HHzsBVItGgXmG0LN-Y_Xf2TS2X7xnZNpyvq66emRdWqTlZzT6dhtCib0eozymGQdWOVPFvU9tyZdqxcjxKVrOVT3WCn5PHc1ko2T-pklWmVPYmTZCX-6P3rcoxpqlzOG_U11l1TV14P5PN-e4ij12ESiHyGqWfAYdimLE7Su1zyb4riit8P9oZQL_A10ZqioZxjum2XV3AzDos2KeabexOXRWfeyx4BcATVlnw_l7Jmvmq8CrxOrszbcDRxEXjluffPYU3xO5ki8Lr7yAKvdyuvPf4MAAD__0tpCEM">