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

    <tr>
        <th>Summary</th>
        <td>
            [Flang] fatal internal error: CHECK(hit) failed at /root/llvm-project/flang/lib/Semantics/data-to-inits.cpp(650)
        </td>
    </tr>

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

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

    <tr>
      <th>Reporter</th>
      <td>
          k-arrows
      </td>
    </tr>
</table>

<pre>
    Reproducible on Godbolt:
https://godbolt.org/z/3Tb9reqfb

Reproducer:
```console
$ cat test.f90
program p
  interface
    subroutine s
    end subroutine
  end interface

  procedure(s), pointer :: p

 data p /s/
  data p /s/

end
```

Stack dump:
```console
fatal internal error: CHECK(hit) failed at /root/llvm-project/flang/lib/Semantics/data-to-inits.cpp(650)
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.      Program arguments: /opt/compiler-explorer/clang-llvmflang-trunk-20240503/bin/flang-new -fc1 -triple x86_64-unknown-linux-gnu -S -mrelocation-model pic -pic-level 2 -pic-is-pie -target-cpu x86-64 -mllvm -x86-asm-syntax=intel -resource-dir /opt/compiler-explorer/clang-llvmflang-trunk-20240503/lib/clang/19 -mframe-pointer=all -o /app/output.s -x f95-cpp-input /app/example.f90
 #0 0x000000000376d718 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/opt/compiler-explorer/clang-llvmflang-trunk-20240503/bin/flang-new+0x376d718)
 #1 0x000000000376b08c SignalHandler(int) Signals.cpp:0:0
 #2 0x00007005baa42520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520)
 #3 0x00007005baa969fc pthread_kill (/lib/x86_64-linux-gnu/libc.so.6+0x969fc)
 #4 0x00007005baa42476 gsignal (/lib/x86_64-linux-gnu/libc.so.6+0x42476)
 #5 0x00007005baa287f3 abort (/lib/x86_64-linux-gnu/libc.so.6+0x287f3)
 #6 0x0000000004cde909 (/opt/compiler-explorer/clang-llvmflang-trunk-20240503/bin/flang-new+0x4cde909)
 #7 0x00000000042bb253 Fortran::semantics::CheckForOverlappingInitialization(std::__cxx11::list<Fortran::common::Reference<Fortran::semantics::Symbol const>, std::allocator<Fortran::common::Reference<Fortran::semantics::Symbol const>>> const&, Fortran::semantics::SymbolDataInitialization&, Fortran::evaluate::ExpressionAnalyzer&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) data-to-inits.cpp:0:0
 #8 0x00000000042bb480 Fortran::semantics::ConstructInitializer(Fortran::semantics::Symbol const&, Fortran::semantics::SymbolDataInitialization&, Fortran::evaluate::ExpressionAnalyzer&) (/opt/compiler-explorer/clang-llvmflang-trunk-20240503/bin/flang-new+0x42bb480)
 #9 0x00000000042c10f0 Fortran::semantics::ConvertToInitializers(std::map<Fortran::semantics::Symbol const*, Fortran::semantics::SymbolDataInitialization, std::less<Fortran::semantics::Symbol const*>, std::allocator<std::pair<Fortran::semantics::Symbol const* const, Fortran::semantics::SymbolDataInitialization>>>&, Fortran::evaluate::ExpressionAnalyzer&) (/opt/compiler-explorer/clang-llvmflang-trunk-20240503/bin/flang-new+0x42c10f0)
#10 0x0000000004119fb8 Fortran::semantics::Semantics::Perform() (/opt/compiler-explorer/clang-llvmflang-trunk-20240503/bin/flang-new+0x4119fb8)
#11 0x00000000037bed95 Fortran::frontend::FrontendAction::runSemanticChecks() (/opt/compiler-explorer/clang-llvmflang-trunk-20240503/bin/flang-new+0x37bed95)
#12 0x0000000003ae83c2 Fortran::frontend::CodeGenAction::beginSourceFileAction() (/opt/compiler-explorer/clang-llvmflang-trunk-20240503/bin/flang-new+0x3ae83c2)
#13 0x00000000037bdf25 Fortran::frontend::FrontendAction::beginSourceFile(Fortran::frontend::CompilerInstance&, Fortran::frontend::FrontendInputFile const&) (/opt/compiler-explorer/clang-llvmflang-trunk-20240503/bin/flang-new+0x37bdf25)
#14 0x00000000037ad7e7 Fortran::frontend::CompilerInstance::executeAction(Fortran::frontend::FrontendAction&) (/opt/compiler-explorer/clang-llvmflang-trunk-20240503/bin/flang-new+0x37ad7e7)
#15 0x00000000037c41fd Fortran::frontend::executeCompilerInvocation(Fortran::frontend::CompilerInstance*) (/opt/compiler-explorer/clang-llvmflang-trunk-20240503/bin/flang-new+0x37c41fd)
#16 0x0000000001f2b248 fc1_main(llvm::ArrayRef<char const*>, char const*) (/opt/compiler-explorer/clang-llvmflang-trunk-20240503/bin/flang-new+0x1f2b248)
#17 0x0000000001e1a86d main (/opt/compiler-explorer/clang-llvmflang-trunk-20240503/bin/flang-new+0x1e1a86d)
#18 0x00007005baa29d90 (/lib/x86_64-linux-gnu/libc.so.6+0x29d90)
#19 0x00007005baa29e40 __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x29e40)
#20 0x0000000001f2a1ae _start (/opt/compiler-explorer/clang-llvmflang-trunk-20240503/bin/flang-new+0x1f2a1ae)
flang-new: error: unable to execute command: Aborted (core dumped)
flang-new: error: flang frontend command failed due to signal (use -v to see invocation)
flang-new version 19.0.0git (https://github.com/llvm/llvm-project.git 18707f53d6d2665634373847a0e9bdcbcac88c57)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/compiler-explorer/clang-llvmflang-trunk-20240503/bin
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzMWFlv2zoW_jXyCyGDohZLD37wTeJ7ixlgiqbvBkUd2ZxQpIakUqe_fkBKXqj0pk2nRidwDHM75_vOwuVQY_heAqyj_I8ov1_QwR6UXj_FVGv1xSxq1bysP0GvVTMwXgtASqI_VVMrYaN0E-H7CG8O1vbGtcg2Itv9OLpUeh-R7deIbNPPdaXhP209Th-_T0JBn-VEBR4_TEmjBEy9JEOMWmTB2GVb4bG312qvaYf6sYkQlxZ0SxmcOhAyQ63VYLkEZC69IJurkVO_652JOA31WjFoBg0RKU1EqojcoV75ychhTzcnFNOKhlqKehSRrXEmmcR8q3f8BtnMDHA9-mgpe0LN0PXfMVRLLRUjCUkFAq2Vsy26--vh7h8RKQ_cRqRCLeUCGkStg6KVshHZCvHcxb1W_wbmmq2g0jlP8Doi20foqLScOdiORGxVzCW3Zsn6PiJlkWNnFY_h4z8fNo8Pzr4dt4iietgjDb3SFlmFZoHC7WGol0x1E4LXQLgxAzi9iHr_MDE0gOwBENPUHFBN2ZPVlMHyb22FlxGuPk7RQvV-6EBaB8LRV73TwlTXcwE6hmMvlAbt-pwJYgfHGyO2epBPMcEkwzlOI7KtuTxZKpbwBcUtS1BsNe8FoGNZ7IosHuSTVF9kLLgcjvFeDih-RHGnQShGLVcy7lQDAvWcobjnLBbwDAKRscFN3HNAsaV6DzZm_eDkxkWG4s4BQ7FrUtPF5kVaeozSe-d8gWINRg2aQdxw_T_SHEOATQGRVCjuWk07iKcMiNJ7KgSKldNDXTxs1WD7wS4Nio-orfKY9X3MZT_YyxQ40q4XcElnFJEUI3zEp790VTSrpEQ-LnySmRcz_vioubTe05-d6yNSXiZp-mWnjNVAu4gULlO59FEfkfKX-jsif-DjBPIc_Y5FMmNR45KhR76XVPxFZSOctnICNXaPeZRusP8_CyKToBXGeU1pRnKCJxqjU6YgOwfXOMCWRi0LD88vCcClocyqqFqGenvQQJvdExfifQr8-kBBNgedrQq0N57ne8FnqyKQnYeySblqU0Rrt7e8S7JfGEgurn2WsQYqfKOImYQH2leBdlLXJE_RVmmrqZxC_7wD--bdAdjTVul_PYMWtO-53H-Q3HIq-Fe_rbiDyjbj5N2OHY9JMjYENzZK7wLhTHWdmn5_ghY0SAbzSTMEjy9drQRyx4-N0geXZ2eFVPjdzZ09v16R_0zNMb-_v_qeWjq3z-ul8EzFQC2MrYdjr8EYruRGUvHy1Xm8CGgGdq2p4WxnrOZyH6V37EB1MNl17Kym3J084_AbVjuNB0wr9PrsfbVnlPNQykr8dig5-Xpg9mwgvz_9sEt-gw9ulZmjtYLMrEJzsgS33zXnM2j7WV2Z01xnY0f790Q82fy8ea-CS4Ax71T7RnieO3vKXyX522JPP36S02kD-P-LHR8a59hx14DgNpMlSdXW5dusw-ZH0K3Sncd7K9gjqgD27PpSQ1PlIexWK2ndk8W3tlNrw0YP-UvYIE9k_FFlbkliwhiQIAEJCmXKyFsk7lQDf4K85lDDnstHf4vecgHT0C15jDADHunMGU1L3u2MGZH55j43xMjmgzSWutP5G4n2bZUf3AXfKQiOrFt53BkisFQWWoo2K1i97fEZ0XEPOQIb7MXZP27qm9L1bAK6eUiXZUnbvEV3InZh_Tw9QN8bDpsb0vQsAprBvTxpSU2yErUs2XXUSbh69220pi-foJ1uT_NzLOy7FYUJYUAhuNwnkNCyaJCDfyMIo4YAQjl7N1VN9c6HpF8SyKzmMiHDaLdzy3bGUm13Vxx_WAtkgRaCZ_6nCQU0yr-ZB52OM4jLaLq5FNQGSWsByCo05RVyTxvqswZt3IMUGoePKQ2-GAXNdyT6XnRKvpO4U6muGbyyyyt6MIDiZ98HgPhVNs-1oGfQ7haEkmqJl3jPveHeV4dbulVJucKrNk-boiFFkRdplq7SMltRDFXdsJpRVpYsv2xTn33VypH7u2LYNM8XH5AvhPlSqjL8OA75bUcIaO65_jUFu7B6umjWaVOlFV3AOlkl2YrgrMKLw5q0FU6aKsVtVtR5lmcVq1OCWZEyUmV5veDrk2C8SrIcL5PVqm2askiKosRQV1GGoaNcLB2gpdL7hS9lritcZdlC0BqE8TV3QqZiK4ny-4Vee8PXw95EGXavdXORYLkVvlC_9Svye_R7K76LQYv1z5d0vSn-GwAA___5JJVA">