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

    <tr>
        <th>Summary</th>
        <td>
            [Clang] Assertion `isCurrentFileAST() && "dumping non-AST?"' failed. with `-module-file-info`
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            clang
      </td>
    </tr>

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

    <tr>
      <th>Reporter</th>
      <td>
          patrick-rivos
      </td>
    </tr>
</table>

<pre>
    Testcase:
```c
int a;
```

Backtrace:
```
> /scratch/tc-testing/tc-apr-4/build-rv64gcv/build-llvm-linux/bin/clang -module-file-info red.c -o rv64gcv.out
clang: /scratch/tc-testing/tc-apr-4/llvm/clang/lib/Frontend/FrontendActions.cpp:841: virtual void clang::DumpModuleInfoAction::ExecuteAction(): Assertion `isCurrentFileAST() && "dumping non-AST?"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0.      Program arguments: /scratch/tc-testing/tc-apr-4/build-rv64gcv/build-llvm-linux/bin/clang -module-file-info red.c -o rv64gcv.out
 #0 0x00005d0ff0934730 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/scratch/tc-testing/tc-apr-4/build-rv64gcv/build-llvm-linux/bin/clang+0x1e50730)
 #1 0x00005d0ff0931b3f llvm::sys::RunSignalHandlers() (/scratch/tc-testing/tc-apr-4/build-rv64gcv/build-llvm-linux/bin/clang+0x1e4db3f)
 #2 0x00005d0ff087f6c8 CrashRecoverySignalHandler(int) CrashRecoveryContext.cpp:0:0
 #3 0x0000744d8b842520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520)
 #4 0x0000744d8b8969fc __pthread_kill_implementation ./nptl/pthread_kill.c:44:76
 #5 0x0000744d8b8969fc __pthread_kill_internal ./nptl/pthread_kill.c:78:10
 #6 0x0000744d8b8969fc pthread_kill ./nptl/pthread_kill.c:89:10
 #7 0x0000744d8b842476 gsignal ./signal/../sysdeps/posix/raise.c:27:6
 #8 0x0000744d8b8287f3 abort ./stdlib/abort.c:81:7
 #9 0x0000744d8b82871b _nl_load_domain ./intl/loadmsgcat.c:1177:9
#10 0x0000744d8b839e96 (/lib/x86_64-linux-gnu/libc.so.6+0x39e96)
#11 0x00005d0ff146585c clang::DumpModuleInfoAction::ExecuteAction() (/scratch/tc-testing/tc-apr-4/build-rv64gcv/build-llvm-linux/bin/clang+0x298185c)
#12 0x00005d0ff1446539 clang::FrontendAction::Execute() (/scratch/tc-testing/tc-apr-4/build-rv64gcv/build-llvm-linux/bin/clang+0x2962539)
#13 0x00005d0ff13ca856 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/scratch/tc-testing/tc-apr-4/build-rv64gcv/build-llvm-linux/bin/clang+0x28e6856)
#14 0x00005d0ff1517ee5 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/scratch/tc-testing/tc-apr-4/build-rv64gcv/build-llvm-linux/bin/clang+0x2a33ee5)
#15 0x00005d0fef7e1eaf cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/scratch/tc-testing/tc-apr-4/build-rv64gcv/build-llvm-linux/bin/clang+0xcfdeaf)
#16 0x00005d0fef7db593 ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&) driver.cpp:0:0
#17 0x00005d0ff11f4fbd void llvm::function_ref<void ()>::callback_fn<clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const::'lambda'()>(long) Job.cpp:0:0
#18 0x00005d0ff087fb90 llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) (/scratch/tc-testing/tc-apr-4/build-rv64gcv/build-llvm-linux/bin/clang+0x1d9bb90)
#19 0x00005d0ff11f583e clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const (.part.0) Job.cpp:0:0
#20 0x00005d0ff11b987a clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&, clang::driver::Command const*&, bool) const (/scratch/tc-testing/tc-apr-4/build-rv64gcv/build-llvm-linux/bin/clang+0x26d587a)
#21 0x00005d0ff11ba34d clang::driver::Compilation::ExecuteJobs(clang::driver::JobList const&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&, bool) const (/scratch/tc-testing/tc-apr-4/build-rv64gcv/build-llvm-linux/bin/clang+0x26d634d)
#22 0x00005d0ff11c7264 clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&) (/scratch/tc-testing/tc-apr-4/build-rv64gcv/build-llvm-linux/bin/clang+0x26e3264)
#23 0x00005d0fef7df2f8 clang_main(int, char**, llvm::ToolContext const&) (/scratch/tc-testing/tc-apr-4/build-rv64gcv/build-llvm-linux/bin/clang+0xcfb2f8)
#24 0x00005d0fef71c9eb main (/scratch/tc-testing/tc-apr-4/build-rv64gcv/build-llvm-linux/bin/clang+0xc389eb)
#25 0x0000744d8b829d90 __libc_start_call_main ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16
#26 0x0000744d8b829e40 call_init ./csu/../csu/libc-start.c:128:20
#27 0x0000744d8b829e40 __libc_start_main ./csu/../csu/libc-start.c:379:5
#28 0x00005d0fef7da845 _start (/scratch/tc-testing/tc-apr-4/build-rv64gcv/build-llvm-linux/bin/clang+0xcf6845)
clang: error: clang frontend command failed with exit code 134 (use -v to see invocation)
clang version 19.0.0git (https://github.com/llvm/llvm-project.git 1b761205f2686516cebadbcbc37f798197d9c482)
Target: riscv64-unknown-linux-gnu
Thread model: posix
InstalledDir: /scratch/tc-testing/tc-apr-4/build-rv64gcv/build-llvm-linux/bin
clang: note: diagnostic msg:
********************

PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
Preprocessed source(s) and associated run script(s) are located at:
clang: note: diagnostic msg: /scratch/tmp/red-4d3a09.c
clang: note: diagnostic msg: /scratch/tmp/red-4d3a09.sh
clang: note: diagnostic msg:

********************
```

Reprducer: 
[red-4d3a09.zip](https://github.com/llvm/llvm-project/files/14891886/red-4d3a09.zip)


Godbolt:
https://godbolt.org/z/nb4G5M57f

Found via fuzzer.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzkWV9z2yoW_zTkhbFGAv1BD3lwnLi3d3q3nSS7--hBgGy2EmgA-Sb99DsgxZYcJ7e9W_dlO6lHEocf53fO4XAAaq3cKiGuQXYDstsr2rudNtcddUayrwsj99peVZo_Xz8K6xi1AuAliG9BvAR5PPyx4V0qBynANyet42v4vaHsqzOUnQEZX_EdBGhtmaGO7QBaO7ZwwjqptsML7cwiBWhd9bLhC7PP0y3bH96bZt8uGqn6J_9JKoDWrKFqCxet5n0jFrVsxEKqWkMjeMTgQsMRI9K9G3QIPQBefp8ifsiXYfyrrABar41WTig-eVwyJ7WyEes6gJckTfwIe2lcTxu415LDl3EBXt72bfdH0PijqvXQdWi5exKsd2L8hAhApQdaWiuM_wRBHku76o0Ryq1lI5YPj4MYBCgHKIcAId63nVRbqLRa-Ha8BggBVMCaykbwaLDDl093y4c7aPuqlQ5SWPVbaESnjYNOw51znfU6oTVA6610u76KmG6PJgnO6Iz-j2AOoLW0thcWoDWkikOpWNNzAd1OQGao3cHqEBtoBTsjOqOZsFZwaHVvhs--J7VWM0md4ND0ClpmZOdGlR8cZV-hp3cIsDiC4d8Xo7eGtpCabd8K5ex3e_iCoQYBwjGMn-I4jjMe13Vc4rTAMQwmDA63z3Z4-GKkcoHg42AlchQy9M-Nts4I2gYvr6BUbvA5uQBHgG7ip0RkcYFjH4AHLskJl6TC9Tku9716kFtFm9-o4o0w9hCiF1Q35RWuZ-qimbqkqHNG4MpH471gei_M80xLgMho1pnMyk_wJzfO7Dj8PwyBxyGKNOWkIinKUDzSHFLFE8k3eTqovdiqfmhgkdVRHhQPXWZqp3PMMi9rBjebzu2MoHzzVTbNRrZdI3yc05AVIoDWqnMNQOupWMQAXqYpwMsiP-Jn34OvnDCKNu8iFwTgZTKxRn4OedrtXThSnsAVp8ZNixxubfBZQBoeAVpH4e3ZctH5FNRpK32QGCqtCNioAHg5sQGZQyNS1BjSyie_AOX44L7wadDOZ_TiiFC-QkgquFHNptGUb7huqRz8IlWg6z-3dsvoAJckhVdpdLufW_EcEJeizH8slEKXQyh5zNmETdI8Ixn72wvRJacvKklCMjZTHs2VT_MMl1Pl50vvTO1foXCOMlzOFMYzhTGjJMunCq9028lGmI_KOqqGKum1pd9m6FP_ZUkRkZNsHkLpjFSWFEJkU1Kj-kdue83oayqvuKPlpclQjIXIZmSyCRlRFyIRtIaMJRs_W2dL7tIY-nwvaoBXbEcNZFpZ55XGd379nX9Dq1DiXZ4Tq7mg9YxSPqfEq6zE8MUpq-RR62ZG7KGlTfMvwZw2H9uuOcsvlBjHLh5jXAVf5EIkciP3wrxeGL1axSxskjqtKz7UwUfculchsDcm2Dm0vtS8d4MIo03jK8dNrbymx3gaxh5ja5WsdNtSxU-TwFl_WjfK6c6PTr0NJvZxRqptkLwbnX3osNmwp6ckGV4qaiXb2CA-WnEm7D9snKHS16JD8wkcbRo_V7SZtHuREFBVcFwIqMHmoQtARUPbilOAiqOpEGm0j5AS_q6r8_4gp7VQVU7L0HMVz7GWo7VonmfmfN91Fy71eFlVZTybBeVJuGUEC_j_HC7eAVFHjYvi9-ICxXPDVSUp6JuGCzmcvlptX6w5S_gnHb3AJHms3hljKrocpQd6E24XWzVynpGCToMLJSc2ojjlP2qj33Vl3zbQ77r6JK2bGei9lH2IiY5KHw5h3_L9Nh0D55dbNscpn1l2XuIlrEB5-haL28nzrOg4U2285ZFfaNnL1ja5wChPZ7bEJ4VAjWoy6P1S3bxwCalnOSaOv17mL1rPVKgmMxrpnEbCSlHBsJm6pB6YlKKa6XGyS0YlL2O42fgd18Y6atzG1yabwzaP2f71RnTc6p7rFO0AXmZhB50fR81PRxVpDEMfqaQ7HWh49OiLgD7sLJEHRZMcX5wDnVE5x-IsOC78Jj07YpOTqKMkzeCAetnAyUl6rO0PZ7rCGL8-LofAh_W4gYJsnKjDCSj8U7odFE_SBzoXMMGpV7a3Ai720GlohYByspOZDgP3wlipFUzKKI7irQxEf-y8NPK9kqrIExRnNcpJniU5ExXlFasYLuqiJElZ8JKlBB2Gf6RmK3xZBo20bJ-ni159VfpPNTkTGATDyQpsNReNFx_OQ0JT2H81jeC30vzsI9K5K5R2focLuaRbpa2TDLZ2e7wZQP_D3-TOYTzGXj4-Lle_wcff7uD686dPn__98R8f4Prjp7sH-Pg5fL755wd4f_fl8_3jQYcv546hifVJ782j6IOAETDUY4JD6g6Qf03_xORtB9DaCL5IOaZxGbGfhGN3P-iPn-WVcxdD96IzvGdiCLmhIbuZaPtNdiC7_eF5BNC6lk24dkhSUiaE5HMreNxDVp_8ftC80s3RbSfDDq2RNn4ifPOJvEo_ZH9kRT0FWetecbiXFNb9t2_CRFf8GvMSl_RKXCdFgnCexyi-2l3XOCVVjlBW5DUp0yrNi0QkjLKUEF7U4kpeoxilcRrncZLgNI4KSsoE57gQaZLRugJpLFoqm8jT94pdhQuXa1KQDF01tBKNDZd8CI1ZEoHs9spcB3NV_daCNG6kdfaI4KRrws3gKvTIbn_yPdOQZkEev7ozAXl81Zvm-u_fMgXe_w0AAP__9xjDCg">