<?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 Re: ifx wrong result with EXTENDS_TYPE_OF in array constructor at -O2 in Intel® Fortran Compiler</title>
    <link>https://community.intel.com/t5/Intel-Fortran-Compiler/ifx-wrong-result-with-EXTENDS-TYPE-OF-in-array-constructor-at-O2/m-p/1751303#M179079</link>
    <description>&lt;P&gt;is this thread is real or fake... If it wont help, then insuficient data reported as thread to messaging.&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;WRONG! test = &lt;SPAN class=""&gt;[ &amp;amp;
        extends_type_of(polymorphic_array(1), element),&amp;lt;--------!!!!!!!! &amp;amp;
        extends_type_of(polymorphic_array(2), element) &amp;amp;
    ]&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN&gt;test = &lt;SPAN class=""&gt;[ &amp;amp;
        extends_type_of(polymorphic_array(1), element) &amp;amp;
        extends_type_of(polymorphic_array(2), element) &amp;amp;
    ]&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN&gt;WRONG!    print *, "array:   ", test&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN&gt;    print *, "array:*", test&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;&lt;SPAN&gt;OR&lt;/SPAN&gt;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;    print *, "array:array(1)", test&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN&gt;    print *, "array:array(2)", test&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;if not all (* is missing or 1 2) then error&lt;BR /&gt;&lt;BR /&gt;goodluck.&lt;/P&gt;</description>
    <pubDate>Sun, 14 Jun 2026 14:14:39 GMT</pubDate>
    <dc:creator>LitSurfTry</dc:creator>
    <dc:date>2026-06-14T14:14:39Z</dc:date>
    <item>
      <title>ifx wrong result with EXTENDS_TYPE_OF in array constructor at -O2</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/ifx-wrong-result-with-EXTENDS-TYPE-OF-in-array-constructor-at-O2/m-p/1750995#M179050</link>
      <description>&lt;P class=""&gt;&lt;SPAN&gt;I observe a wrong result with &lt;/SPAN&gt;&lt;SPAN&gt;ifx&lt;/SPAN&gt;&lt;SPAN&gt; when using &lt;/SPAN&gt;&lt;SPAN&gt;EXTENDS_TYPE_OF&lt;/SPAN&gt;&lt;SPAN&gt; on elements of a polymorphic allocatable array inside an array constructor. The issue appears with optimization enabled, at least with &lt;/SPAN&gt;&lt;SPAN&gt;-O2&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN&gt;Minimal reproducer:&lt;/SPAN&gt;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;program bug_report
    implicit none

    type :: base_type
    end type base_type

    class(base_type), allocatable :: polymorphic_array(:)
    type(base_type) :: element
    logical :: test(2)

    allocate(polymorphic_array(2))

    test = &lt;SPAN class=""&gt;[ &amp;amp;
        extends_type_of(polymorphic_array(1), element), &amp;amp;
        extends_type_of(polymorphic_array(2), element) &amp;amp;
    ]&lt;/SPAN&gt;

    print *, "scalar 1:", extends_type_of(polymorphic_array(1), element)
    print *, "scalar 2:", extends_type_of(polymorphic_array(2), element)
    print *, "array:   ", test

    if (.not. all(test)) error stop "wrong result"
end program bug_report&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;SPAN&gt;Expected output:&lt;/SPAN&gt;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt; scalar 1: T
 scalar 2: T
 array:    T T&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;SPAN&gt;Actual output with &lt;/SPAN&gt;&lt;SPAN&gt;ifx -O2&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt; scalar 1: T
 scalar 2: T
 array:    F T
ERROR STOP wrong result&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;SPAN&gt;The two scalar calls to &lt;/SPAN&gt;&lt;SPAN&gt;EXTENDS_TYPE_OF&lt;/SPAN&gt;&lt;SPAN&gt; return the expected value, but the same expressions evaluated inside the array constructor assigned to &lt;/SPAN&gt;&lt;SPAN&gt;test&lt;/SPAN&gt;&lt;SPAN&gt; produce an incorrect first element.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN&gt;Compilation commands used:&lt;/SPAN&gt;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;ifx -O1 bug_report.f90 &amp;amp;&amp;amp; ./a.out
ifx -O2 bug_report.f90 &amp;amp;&amp;amp; ./a.out&lt;BR /&gt;gfortran -O1 bug_report.f90 &amp;amp;&amp;amp; ./a.out
gfortran -O2 bug_report.f90 &amp;amp;&amp;amp; ./a.out&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;SPAN&gt;Observed behavior:&lt;/SPAN&gt;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;ifx -O1: correct result
ifx -O2: wrong result, first element of test is F&lt;BR /&gt;gfortran -O1: correct result&lt;BR /&gt;gfortran -O2: correct result&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P class=""&gt;&lt;SPAN&gt;Compiler version:&lt;/SPAN&gt;&lt;/P&gt;&lt;PRE&gt;ifx (IFX) 2025.0.4 20241205&lt;/PRE&gt;&lt;P class=""&gt;&lt;SPAN&gt;System information:&lt;/SPAN&gt;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;OS: &lt;SPAN class=""&gt;Arch&amp;nbsp;Linux&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 11 Jun 2026 13:56:12 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/ifx-wrong-result-with-EXTENDS-TYPE-OF-in-array-constructor-at-O2/m-p/1750995#M179050</guid>
      <dc:creator>pums974</dc:creator>
      <dc:date>2026-06-11T13:56:12Z</dc:date>
    </item>
    <item>
      <title>Re: ifx wrong result with EXTENDS_TYPE_OF in array constructor at -O2</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/ifx-wrong-result-with-EXTENDS-TYPE-OF-in-array-constructor-at-O2/m-p/1751131#M179059</link>
      <description>&lt;P&gt;We are taking a closer look at that.&lt;/P&gt;</description>
      <pubDate>Fri, 12 Jun 2026 15:05:05 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/ifx-wrong-result-with-EXTENDS-TYPE-OF-in-array-constructor-at-O2/m-p/1751131#M179059</guid>
      <dc:creator>Shiquan_Su</dc:creator>
      <dc:date>2026-06-12T15:05:05Z</dc:date>
    </item>
    <item>
      <title>Re: ifx wrong result with EXTENDS_TYPE_OF in array constructor at -O2</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/ifx-wrong-result-with-EXTENDS-TYPE-OF-in-array-constructor-at-O2/m-p/1751303#M179079</link>
      <description>&lt;P&gt;is this thread is real or fake... If it wont help, then insuficient data reported as thread to messaging.&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;WRONG! test = &lt;SPAN class=""&gt;[ &amp;amp;
        extends_type_of(polymorphic_array(1), element),&amp;lt;--------!!!!!!!! &amp;amp;
        extends_type_of(polymorphic_array(2), element) &amp;amp;
    ]&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN&gt;test = &lt;SPAN class=""&gt;[ &amp;amp;
        extends_type_of(polymorphic_array(1), element) &amp;amp;
        extends_type_of(polymorphic_array(2), element) &amp;amp;
    ]&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN&gt;WRONG!    print *, "array:   ", test&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN&gt;    print *, "array:*", test&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;&lt;SPAN&gt;OR&lt;/SPAN&gt;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;    print *, "array:array(1)", test&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN&gt;    print *, "array:array(2)", test&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;if not all (* is missing or 1 2) then error&lt;BR /&gt;&lt;BR /&gt;goodluck.&lt;/P&gt;</description>
      <pubDate>Sun, 14 Jun 2026 14:14:39 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/ifx-wrong-result-with-EXTENDS-TYPE-OF-in-array-constructor-at-O2/m-p/1751303#M179079</guid>
      <dc:creator>LitSurfTry</dc:creator>
      <dc:date>2026-06-14T14:14:39Z</dc:date>
    </item>
    <item>
      <title>Re: ifx wrong result with EXTENDS_TYPE_OF in array constructor at -O2</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/ifx-wrong-result-with-EXTENDS-TYPE-OF-in-array-constructor-at-O2/m-p/1751536#M179090</link>
      <description>&lt;P&gt;For completeness, I have a different result with the latest version of ifx&lt;BR /&gt;&lt;BR /&gt;ifx (IFX) 2026.0.0 20260331&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;scalar 1: T
scalar 2: T
array: F F
wrong result&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;now the whole array is False for some reason.&lt;/P&gt;</description>
      <pubDate>Tue, 16 Jun 2026 13:39:55 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/ifx-wrong-result-with-EXTENDS-TYPE-OF-in-array-constructor-at-O2/m-p/1751536#M179090</guid>
      <dc:creator>pums974</dc:creator>
      <dc:date>2026-06-16T13:39:55Z</dc:date>
    </item>
  </channel>
</rss>

