<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Regression with fpp 2025.2.0 in Intel® Fortran Compiler</title>
    <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Regression-with-fpp-2025-2-0/m-p/1703735#M176301</link>
    <description>&lt;P&gt;A library I help maintain cannot be compiled by ifx 2025.2.0 because there seems to be a bug in fpp 2025.2.0&lt;/P&gt;&lt;P&gt;An example is this code:&lt;/P&gt;&lt;LI-CODE lang="fortran"&gt;#define __VERIFY__(a) if(internal_verify(a,rc=rc)) return
#define __RC__ rc=status); __VERIFY__(status
foo(__RC__)&lt;/LI-CODE&gt;&lt;P&gt;This is a *very* whittled down version of what the actual code is, but it demonstrates the issue.&lt;/P&gt;&lt;P&gt;To wit, using fpp 2025.2.0:&lt;/P&gt;&lt;LI-CODE lang="bash"&gt;&amp;gt; fpp -V
Intel(R) Fortran Preprocessor for applications running on Intel(R) 64, Version 2025.2.0 Build 20250605
Copyright (C) 1985-2025 Intel Corporation. All rights reserved.
^C
&amp;gt; fpp Lexer.F90
# 1 "Lexer.F90"



Lexer.F90(3): #error: number of arguments doesn't match.
foo(rc=status); if(internal_verify(status,rc=rc)) return
&amp;gt; echo $?
1&lt;/LI-CODE&gt;&lt;P&gt;Now we use fpp 2025.1.0:&lt;/P&gt;&lt;LI-CODE lang="bash"&gt;&amp;gt; fpp -V
Intel(R) Fortran Preprocessor for applications running on Intel(R) 64, Version 2025.1.0 Build 20250317
Copyright (C) 1985-2025 Intel Corporation. All rights reserved.
^C
&amp;gt; fpp Lexer.F90
# 1 "Lexer.F90"


foo(rc=status); if(internal_verify(status,rc=rc)) return
&amp;gt; echo $?
0&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Note that the preprocessor returns the &lt;EM&gt;exact same code&lt;/EM&gt; but fpp 2025.2.0 returns an error message and a non-zero-status code. Thus, ifx halts since fpp is failing.&lt;BR /&gt;&lt;BR /&gt;I will also say every other preprocessor I've tried works as well. cpp:&lt;/P&gt;&lt;LI-CODE lang="bash"&gt;&amp;gt; cpp --version
cpp (GCC) 15.1.0
Copyright (C) 2025 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

&amp;gt; cpp Lexer.F90
# 0 "Lexer.F90"
# 0 "&amp;lt;built-in&amp;gt;"
# 0 "&amp;lt;command-line&amp;gt;"
# 1 "/usr/include/stdc-predef.h" 1 3 4
# 0 "&amp;lt;command-line&amp;gt;" 2
# 1 "Lexer.F90"


foo(rc=status); if(internal_verify(status,rc=rc)) return
&amp;gt; echo $?
0&lt;/LI-CODE&gt;&lt;P&gt;and NAG Fortran:&lt;/P&gt;&lt;LI-CODE lang="bash"&gt;&amp;gt; nagfor -V
NAG Fortran Compiler Release 7.2(Shin-Urayasu) Build 7228
Product NPL6A72NA for x86-64 Linux
Copyright 1990-2024 The Numerical Algorithms Group Ltd., Oxford, U.K.
&amp;gt; nagfor -F Lexer.F90
NAG Fortran Compiler Release 7.2(Shin-Urayasu) Build 7228
&amp;gt; echo $?
0
&amp;gt; cat Lexer.f90
# 1 "Lexer.F90"


foo(rc=status); if(internal_verify(status,rc=rc)) return&lt;/LI-CODE&gt;&lt;P&gt;And, as before, the resulting processed code is always the same.&lt;/P&gt;&lt;P&gt;I suppose I could do something like:&lt;/P&gt;&lt;LI-CODE lang="bash"&gt;ifx -fpp-name=/path/to/cpp&lt;/LI-CODE&gt;&lt;P&gt;but I'm not sure if cpp does all the same stuff fpp does and if we are relying on some fpp-only macro.&lt;/P&gt;</description>
    <pubDate>Wed, 16 Jul 2025 13:41:38 GMT</pubDate>
    <dc:creator>Matt_Thompson</dc:creator>
    <dc:date>2025-07-16T13:41:38Z</dc:date>
    <item>
      <title>Regression with fpp 2025.2.0</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Regression-with-fpp-2025-2-0/m-p/1703735#M176301</link>
      <description>&lt;P&gt;A library I help maintain cannot be compiled by ifx 2025.2.0 because there seems to be a bug in fpp 2025.2.0&lt;/P&gt;&lt;P&gt;An example is this code:&lt;/P&gt;&lt;LI-CODE lang="fortran"&gt;#define __VERIFY__(a) if(internal_verify(a,rc=rc)) return
#define __RC__ rc=status); __VERIFY__(status
foo(__RC__)&lt;/LI-CODE&gt;&lt;P&gt;This is a *very* whittled down version of what the actual code is, but it demonstrates the issue.&lt;/P&gt;&lt;P&gt;To wit, using fpp 2025.2.0:&lt;/P&gt;&lt;LI-CODE lang="bash"&gt;&amp;gt; fpp -V
Intel(R) Fortran Preprocessor for applications running on Intel(R) 64, Version 2025.2.0 Build 20250605
Copyright (C) 1985-2025 Intel Corporation. All rights reserved.
^C
&amp;gt; fpp Lexer.F90
# 1 "Lexer.F90"



Lexer.F90(3): #error: number of arguments doesn't match.
foo(rc=status); if(internal_verify(status,rc=rc)) return
&amp;gt; echo $?
1&lt;/LI-CODE&gt;&lt;P&gt;Now we use fpp 2025.1.0:&lt;/P&gt;&lt;LI-CODE lang="bash"&gt;&amp;gt; fpp -V
Intel(R) Fortran Preprocessor for applications running on Intel(R) 64, Version 2025.1.0 Build 20250317
Copyright (C) 1985-2025 Intel Corporation. All rights reserved.
^C
&amp;gt; fpp Lexer.F90
# 1 "Lexer.F90"


foo(rc=status); if(internal_verify(status,rc=rc)) return
&amp;gt; echo $?
0&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Note that the preprocessor returns the &lt;EM&gt;exact same code&lt;/EM&gt; but fpp 2025.2.0 returns an error message and a non-zero-status code. Thus, ifx halts since fpp is failing.&lt;BR /&gt;&lt;BR /&gt;I will also say every other preprocessor I've tried works as well. cpp:&lt;/P&gt;&lt;LI-CODE lang="bash"&gt;&amp;gt; cpp --version
cpp (GCC) 15.1.0
Copyright (C) 2025 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

&amp;gt; cpp Lexer.F90
# 0 "Lexer.F90"
# 0 "&amp;lt;built-in&amp;gt;"
# 0 "&amp;lt;command-line&amp;gt;"
# 1 "/usr/include/stdc-predef.h" 1 3 4
# 0 "&amp;lt;command-line&amp;gt;" 2
# 1 "Lexer.F90"


foo(rc=status); if(internal_verify(status,rc=rc)) return
&amp;gt; echo $?
0&lt;/LI-CODE&gt;&lt;P&gt;and NAG Fortran:&lt;/P&gt;&lt;LI-CODE lang="bash"&gt;&amp;gt; nagfor -V
NAG Fortran Compiler Release 7.2(Shin-Urayasu) Build 7228
Product NPL6A72NA for x86-64 Linux
Copyright 1990-2024 The Numerical Algorithms Group Ltd., Oxford, U.K.
&amp;gt; nagfor -F Lexer.F90
NAG Fortran Compiler Release 7.2(Shin-Urayasu) Build 7228
&amp;gt; echo $?
0
&amp;gt; cat Lexer.f90
# 1 "Lexer.F90"


foo(rc=status); if(internal_verify(status,rc=rc)) return&lt;/LI-CODE&gt;&lt;P&gt;And, as before, the resulting processed code is always the same.&lt;/P&gt;&lt;P&gt;I suppose I could do something like:&lt;/P&gt;&lt;LI-CODE lang="bash"&gt;ifx -fpp-name=/path/to/cpp&lt;/LI-CODE&gt;&lt;P&gt;but I'm not sure if cpp does all the same stuff fpp does and if we are relying on some fpp-only macro.&lt;/P&gt;</description>
      <pubDate>Wed, 16 Jul 2025 13:41:38 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Regression-with-fpp-2025-2-0/m-p/1703735#M176301</guid>
      <dc:creator>Matt_Thompson</dc:creator>
      <dc:date>2025-07-16T13:41:38Z</dc:date>
    </item>
    <item>
      <title>Re: Regression with fpp 2025.2.0</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Regression-with-fpp-2025-2-0/m-p/1710606#M176705</link>
      <description>&lt;P&gt;Update. It looks like fpp 2025.2.1 does &lt;EM&gt;NOT&lt;/EM&gt; fix this, sadly:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="bash"&gt;&amp;gt; cat test.F90
#define __VERIFY__(a) if(internal_verify(a,rc=rc)) return
#define __RC__ rc=status); __VERIFY__(status
foo(__RC__)

&amp;gt; fpp -V
Intel(R) Fortran Preprocessor for applications running on Intel(R) 64, Version 2025.2.1 Build 20250806
Copyright (C) 1985-2025 Intel Corporation. All rights reserved.
^C
&amp;gt; fpp ./test.F90
# 1 "test.F90"



test.F90(3): #error: number of arguments doesn't match.
foo(rc=status); if(internal_verify(status,rc=rc)) return

&amp;gt; echo $?
1&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 19 Aug 2025 18:50:43 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Regression-with-fpp-2025-2-0/m-p/1710606#M176705</guid>
      <dc:creator>Matt_Thompson</dc:creator>
      <dc:date>2025-08-19T18:50:43Z</dc:date>
    </item>
  </channel>
</rss>

