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

    <tr>
        <th>Summary</th>
        <td>
            [Flang] fatal internal error: CHECK(isFunction()) failed at /root/llvm-project/flang/include/flang/Semantics/symbol.h(190)
        </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/ba11vdabv

Reproducer:
```console
$ cat test.f90
interface
  subroutine s()
    real :: s
  end subroutine
end interface

s()=0.0
end
```

Stack dump:
```console
fatal internal error: CHECK(isFunction()) failed at /root/llvm-project/flang/include/flang/Semantics/symbol.h(190)
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-20240328/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 -mframe-pointer=all -o /app/output.s -x f95-cpp-input /app/example.f90
 #0 0x000000000377c048 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/opt/compiler-explorer/clang-llvmflang-trunk-20240328/bin/flang-new+0x377c048)
 #1 0x00000000037799bc SignalHandler(int) Signals.cpp:0:0
 #2 0x00007f9d1d442520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520)
 #3 0x00007f9d1d4969fc pthread_kill (/lib/x86_64-linux-gnu/libc.so.6+0x969fc)
 #4 0x00007f9d1d442476 gsignal (/lib/x86_64-linux-gnu/libc.so.6+0x42476)
 #5 0x00007f9d1d4287f3 abort (/lib/x86_64-linux-gnu/libc.so.6+0x287f3)
 #6 0x0000000004bf5169 (/opt/compiler-explorer/clang-llvmflang-trunk-20240328/bin/flang-new+0x4bf5169)
 #7 0x0000000004219be6 (/opt/compiler-explorer/clang-llvmflang-trunk-20240328/bin/flang-new+0x4219be6)
 #8 0x000000000421fa17 Fortran::semantics::CheckHelper::Check(Fortran::semantics::Symbol const&) (/opt/compiler-explorer/clang-llvmflang-trunk-20240328/bin/flang-new+0x421fa17)
 #9 0x000000000421fc1c Fortran::semantics::CheckHelper::Check(Fortran::semantics::Scope const&) (/opt/compiler-explorer/clang-llvmflang-trunk-20240328/bin/flang-new+0x421fc1c)
#10 0x000000000421fc88 Fortran::semantics::CheckHelper::Check(Fortran::semantics::Scope const&) (/opt/compiler-explorer/clang-llvmflang-trunk-20240328/bin/flang-new+0x421fc88)
#11 0x0000000004220292 Fortran::semantics::CheckDeclarations(Fortran::semantics::SemanticsContext&) (/opt/compiler-explorer/clang-llvmflang-trunk-20240328/bin/flang-new+0x4220292)
#12 0x000000000410e2e7 Fortran::semantics::Semantics::Perform() (/opt/compiler-explorer/clang-llvmflang-trunk-20240328/bin/flang-new+0x410e2e7)
#13 0x00000000037c0497 Fortran::frontend::FrontendAction::runSemanticChecks() (/opt/compiler-explorer/clang-llvmflang-trunk-20240328/bin/flang-new+0x37c0497)
#14 0x0000000003aeaff0 Fortran::frontend::CodeGenAction::beginSourceFileAction() (/opt/compiler-explorer/clang-llvmflang-trunk-20240328/bin/flang-new+0x3aeaff0)
#15 0x00000000037bfa75 Fortran::frontend::FrontendAction::beginSourceFile(Fortran::frontend::CompilerInstance&, Fortran::frontend::FrontendInputFile const&) (/opt/compiler-explorer/clang-llvmflang-trunk-20240328/bin/flang-new+0x37bfa75)
#16 0x00000000037af827 Fortran::frontend::CompilerInstance::executeAction(Fortran::frontend::FrontendAction&) (/opt/compiler-explorer/clang-llvmflang-trunk-20240328/bin/flang-new+0x37af827)
#17 0x00000000037c5cfd Fortran::frontend::executeCompilerInvocation(Fortran::frontend::CompilerInstance*) (/opt/compiler-explorer/clang-llvmflang-trunk-20240328/bin/flang-new+0x37c5cfd)
#18 0x0000000001f5c6c8 fc1_main(llvm::ArrayRef<char const*>, char const*) (/opt/compiler-explorer/clang-llvmflang-trunk-20240328/bin/flang-new+0x1f5c6c8)
#19 0x0000000001e4d78d main (/opt/compiler-explorer/clang-llvmflang-trunk-20240328/bin/flang-new+0x1e4d78d)
#20 0x00007f9d1d429d90 (/lib/x86_64-linux-gnu/libc.so.6+0x29d90)
#21 0x00007f9d1d429e40 __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x29e40)
#22 0x0000000001f5b62e _start (/opt/compiler-explorer/clang-llvmflang-trunk-20240328/bin/flang-new+0x1f5b62e)
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 0fda758f26c1ec06809fdc067cd65dc146f867d0)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/compiler-explorer/clang-llvmflang-trunk-20240328/bin
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzUWM1u4zgSfhr5UpBBUf8HHzxxe3qwe2hM5h5QVMnmhiIFkko7-_QLUnJsuTFJZzFe7ASJEJbIqu-rH5EsZq04KMRNlP8S5bsVG91Rm81zzIzR3-2q0e3r5nccjG5HLhqJoBX8qttGSxel24jsIrI9OjdYP6L7iO4P09u1NoeI7v8d0X3DkuSlZc3LNH16npWiedMTFWT65VpZLXGW0gw4c-DQunVXk0kqlEPTMT5PArBjY_TohEKwEa0iWp_fABhkEryZdAv2LEbVXi2apF52o3l6nlWmO7Imb3NvYF8veHSMP0M79sMH9DrmmJyMKiYBjdHeI_Dw9cvDPyJaCbsfFXdCqxkCraFjQmILzEFE90ZrF9G9lC99PBj9L-R-2EmmvP-F4nJs8UryiD1TTnAb0b197Rst18eIVklN3nz27Z9fto9fvHd64YBBMx7A4KCNA6fhJtzCHcdmzXU_g_gRi7B2RG8OWPBvQATuiMANs0doGH92hnFc_6nvyDoi9TejD4b1wMxh7FE5D8J7QA_eCtf9ICSaGE-D1AaNl3nOsYcT2MfOjOo5poRmJPXe3DdCnV0TK_wOcccTiJ0Rg0Q4VcVTkcWjelb6u4qlUOMpPqgR4keIe4NSc-YDE_e6RQmD4BAPgscSX1ACnQbCxoNAiB0zB3QxH0avNy4yiHsPDGI_ZLaP7aty7BSlO58MEuK-M6zHeNAhOaJ0x6SEWHvGbBg879ENo1tbiE_Q1XnMhyEWahjdZQqeWD9IvNQNRDQlQE7k_JOWJSdZBSF0oUTsq53--WaEciEYf_joRLS6TDLs-5O2ziDrI1pE9MGnsM_NkKV_YUgi-gs5zSAvRR3RNLlhUdcNh0dxUEx-ZaqV3lo1g5rEds0Hn1Ik_L0porOisqvbpM0ymlMy05Ciieh-zoO3-E8v-NrqdRHghSULcOlSZ13UHYfBHQ2y9ulZSPk5A2H9wkB2CzorCzjYwPOz4LOyWOjOl7ppVXYpsMaX_6c0h4ULzcV1zLKmy5PiThkzK19YLxfWaVI3WNzJ-qR8Yb26sd6xpIS9Ns4wNRfe25c5DB-OyJ-_ohymLXIWRLR6b9Fj-KKD32JcKMx7-XcisGBY3zLkCb8DQ64H_N8Q5Mml6PwXh_xAsKr-3gSrakEwWRKkhNb0Y4I75JKZsBXaj7idhw9aOTzdmWDAvyBIFwQTghTfL8LH5fAbmk6bfjqK3Qn2hGoBO13udZxk9Q3szniHqnYa7efRdjo4Tjv2qM5kQtTsPUnMGBcksgUJhqzryHskHnSLv6K65tDgQahHPRqOeyFxe3UuvhOPCeaCR74MRtOxMv9sMG6I3FbNrSMmNr8p65jyB7Fw4PoJk7_506A3cP_PyeyIhaeKpadYV9F30_YHokGKJ-SjuwT75119V7qBzYJueVOlOe_a9-jOxC6sX-YLxWfTYXvPOvYsFjQXB5mky3nBK-h48tQzr-HqkrA1hr3-jl2UPvAjM-ck3EbpF5_AS9m9KMwIFxQWJ5UEs7asWvDw7wRhsnANgZKbQ3bd1p-8dYQlC53JrU7MCDw9-WVP1jHjnq44_rQVzJZW6E38m4IiTPrvFkFv4w3E5W26vTRMRsUaieA0zHUFXPc9C1UDW397wdbj49pgaC5g-4HGIIVz8Z3Vnbsv7RiMXa5co0WIX4IMEcRVNd9agRc0VmgFSb0ma3IQwXGf66us_SrStazMq44WPEFOiorUXctJUfK2yFueZEVXFWV7id8foQvhyf1Zc2OeF26qEBobfvagrThNr8JnR0psd8L8NQ2YZXds1W7Stk5rtsJNUiZJQbO0oKvjhiZdiiTndYpJxquiaJMmrUhNct7mZZauxOasOEkSmtE1b3je0ZTmedWUOXZRRrBnQq49oLU2h1VoTW2qok6LlWQNShs6oZTO3TIa5buV2QTHN-PBRhmRwjp70eCEk6F9ug8r8h38f3X0VqORm_--ZRdc858AAAD___7Mx3s">