<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=http://email.email.llvm.org/c/eJzFWdtu4zgS_RrnhZCgi296yEPiJDsDZLBBp2exbwZFUTanJdEgKcfdX7-nKMW2HHfSSW_PBIYg8VJ1qlh1WGRyXXy9_E2xUldf7ChZjKKbUXTVPa-YMNyu2RO36G-bgj2tVSVZ2X77xpy0TjUrpkvm1pIJbt2urliuGm6-0kCxRmPDcsmcUauVNLJgW8UZZ1uJEXatjYNCVvOq1KZGr9WtERAPHeExjlFCP_vVOlkz1ZS6axgMmUb9z3_-mbeNa1kShdGY7abjobQxExUH9GDbtXRfQGWVbliMSWEUjFsvI2bdmM_crKQbpVdsN58up-NgI4JKNe0uWDVtP2RtJC9YrQtZ0cCNtmrXdf3eWMerShY3ylDXKLlrrcET7upG3Hn_wmGFKriT7F-LBUz1s7gDrBezkrswxKNSOZ4rIfDskR1gJXdx_EvFZx-Q_isQ_xjMR1lJ4RBo_2fnLvYg67ZyimZBYDhKr0fjqH6Ovr321wadxPFx_PtcDMVu92b0k8y3pBUyb1es0qu3pSXzVQE_ZMxKx2SzVUY3tWwcu79ZPny6vf_31c0ovTlZCzxlKRshQ6tP5Rh2sKVzjePGk8nG6JXh9Zn16HL0ZF73ZOyWPGuUYHekkSVhwhZ68xW0s3YQNF-Q1jibz4I4yzJ2bVqMegAjNZaN0kVO31iFjW8JhQaA217D5LpPa--wFYFsLT1hoPM9yyKHV3iO7B5Nbnr-8UPW2rrhOHwYosdRkuw9dSawjufAf2GM8eHfaPKNdFysyQReOmnYFgT9hZVG1wzNVUHrJKS1LItn8zjdm_3rwSFSxBdWtPUGMdI1RfBM9tAFDgNLtxSb9gw9VNW2DuLoJKQCIWIWAO0GO9sZbmeBrJULdP4XC2ojK74LQBssKJSlNQ9KI-Xhy-vATqJKBb9Rs-CmCLa8amXQ8FpaSOGqCWiT8w2HmO7ka-EpKfDbCANHOfgxqLt46Fv9zoLGEibLYKNVg1VCDnpgZc3dOpDGNBofjQ4MMSkWM6AOUm89xFxbAK-FBhHC4U4bGKa49RDb5kk1ReDIKHw7v_sFYtOSi4LpGKY9cVMGQldt3QS0KXfK7KaCt7pO1cCLFEVBlzzSBK6lBkAFFbDAyG7Lh5_M91er-_arRaTrt2cWeJsbXgWqLww-RuD9wJOHakTVFpLUjpJr_P5ufWfm_wMQciQbVrJ4TTUFbHWY_-rQH1jYs5Lkjl7ES4kH0K9468zs96tAdBdyYySyUyINuTDaNyGukQT1RnWVxHMkr3VNqKhIxjAkI7KrUiAS0B6lKMiTr0AXslkhJ-NshkagFkFfhSJDxmESgplKMI8IDGpRBZFIHAE6KEEXgCzkhpRaUnH8USi-arD5KGED1NlPgfZdNE9XQHLUjzZeFNCJLNWE3IFasShESsFUzlI-DWHpjj0nwoGuerYfJWnEol2Ev1mJv3iSi3FZMlpnIumUKvfu5cHA357CPxsOik_mh0GGPy0BCSxXj5IpbRDofmOTvL__zx8IpX6LvI522TyGakw-YItPsPFZHp3D9qltHtUKofAbqrkKq-DVfwzFrISSAYrk1ENcTD5oIGYORKfHomfFXKQiYssluBWULpfG_YCeTbe9kJ7I64knkDJQMz5WM8kzmU3K7hzVry03ljYhegfrO4XN5Jt8MHxV83e71MvFdrPxlneQ5qKEygGmyRCTmM7E_HuY-vdkftxvZF_JaOODbnE8-1HWvG_Nta5-Ank5A7AB8ukQeTLOypfevHr8PMT7AtFPI5tMspN8mR0jm5YZl5OBT-9Q_TvZFFeiPznhd7uTonXyp5Y3FiKHqgGW-RDLJJ3z-BjLwhOvNP54jUpzgKYHOHDgCfgf5ZnzeOdjwBngzYZ4S1nwwar2yA6wt321N0T5wiw6on0YZ5GUgLHHSZT4zNfd3zhOkgxHbREvqTQdsPKVMfzrJ1miKhdrjoMbVYuEBwU5ZcugDQ1brYoB3DcLcA-ygzDAGJ9gjCZ5_E6ZNGUgMzmVmU5xHIfN7xWMeQPBAw6OZkkS5Sk4mJZkaelwu-y13OUtzk9UoFFfIP8buz-u959JmFJ5Jmz7XJV1r77TywkFFiUdJ_Q8qB8P7YqKGc5TneL3WeZn7i17Dknm6xd6af05lznNZBfKWPy6BrtT56Nc0dHLBzQreVt55QKbkD-wyeIVwd1ZrOzT81kqpCAPcPZuvU7r92cS2tLRZevbcPpSR3l0rOEfvtLbW9loR9TEDmUXq63vebi_vXq8ZbbNqTTkjO5ksCdprBtsWzu38dVJcucjZ2VDWrtQG6qXGTnouTr1V7D-spZqdtdVVwuc0583uP31KjXTTI5NTyiqZhmKS2YFTsAu_MgVQJZk4_0VwK-Pme9785ZUspVspOH9ddIZ8-coQ7KDob83KM8V5nl2ObrYmEVEHgCtyEdPCnW6QBywKJ1NDzce-0utV27cPq95Q5fr8UVxmRZZmvEL3rq1NpdGuo1GzMmL1lSXw_VeQWOb-9uPLmefUxcY_5LC0dnE2lZC8N0EfDm9WF-KVI6LNI0mRRoRpc7wyPMxzycJaiMRXVQ8l5W9hN2jJGnkE_Mi6DpqcnPx8wjUZRKB_OIYT0TFJCyLWSRlGU3SbMJ5mY_GEWoYVe0D-cJcepEU3eislHWHKL9AkCLnpfSAgdApV8nLhQ_0ojX9lSGtWP-viLP_TLjwKC89xP8BWwW2Ew>53116</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            Crash during processing of malformed source file
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

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

    <tr>
      <th>Reporter</th>
      <td>
          retpoline
      </td>
    </tr>
</table>

<pre>
    Hi folks,

A crash was found while fuzz testing of the castxml binary which can be triggered via a very short, malformed source file.

**system info**

```
Ubuntu 20.04 x64

$ clang -v
clang version 10.0.0-4ubuntu1 
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/11
Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/9
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/11
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/9
Selected GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/11
Candidate multilib: .;@m64
Selected multilib: .;@m64
```

**crash.cxx**

```
;
```

**debug log**

```
(gdb) set environment LD_PRELOAD=/usr/lib/libefence.so
(gdb) r crash.cxx
Starting program: /usr/bin/clang crash.cxx

  Electric Fence 2.2 Copyright (C) 1987-1999 Bruce Perens <bruce@perens.com>
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".

  Electric Fence 2.2 Copyright (C) 1987-1999 Bruce Perens <bruce@perens.com>
[Detaching after vfork from child process 917813]

  Electric Fence 2.2 Copyright (C) 1987-1999 Bruce Perens <bruce@perens.com>
Stack dump:
0.      Program arguments: /usr/lib/llvm-10/bin/clang -cc1 -triple x86_64-pc-linux-gnu -emit-obj -mrelax-all -disable-free -disable-llvm-verifier -discard-value-names -main-file-name crash.cxx -mrelocation-model static -mthread-model posix -mframe-pointer=all -fmath-errno -fno-rounding-math -masm-verbose -mconstructor-aliases -munwind-tables -target-cpu x86-64 -dwarf-column-info -fno-split-dwarf-inlining -debugger-tuning=gdb -resource-dir /usr/lib/llvm-10/lib/clang/10.0.0 -internal-isystem /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++ -internal-isystem /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/x86_64-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/backward -internal-isystem /usr/local/include -internal-isystem /usr/lib/llvm-10/lib/clang/10.0.0/include -internal-externc-isystem /usr/include/x86_64-linux-gnu -internal-externc-isystem /include -internal-externc-isystem /usr/include -fdeprecated-macro -fdebug-compilation-dir /home/test -ferror-limit 19 -fmessage-length 197 -fgnuc-version=4.2.1 -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -fcolor-diagnostics -faddrsig -o /tmp/crash-6e73a6.o -x c++ crash.cxx 
 #0 0x00007ffff15bc4ff llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/lib/x86_64-linux-gnu/libLLVM-10.so.1+0x9814ff)
 #1 0x00007ffff15ba7b0 llvm::sys::RunSignalHandlers() (/lib/x86_64-linux-gnu/libLLVM-10.so.1+0x97f7b0)
 #2 0x00007ffff15bcac5 (/lib/x86_64-linux-gnu/libLLVM-10.so.1+0x981ac5)
 #3 0x00007ffff7d8c3c0 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x153c0)
 #4 0x00007ffff5b9e95f clang::Parser::initializePragmaHandlers() (/lib/x86_64-linux-gnu/libclang-cpp.so.10+0x8cf95f)
 #5 0x00007ffff5bc67c8 clang::Parser::Parser(clang::Preprocessor&, clang::Sema&, bool) (/lib/x86_64-linux-gnu/libclang-cpp.so.10+0x8f77c8)
 #6 0x00007ffff5b249ff clang::ParseAST(clang::Sema&, bool, bool) (/lib/x86_64-linux-gnu/libclang-cpp.so.10+0x8559ff)
 #7 0x00007ffff6f9ae58 clang::FrontendAction::Execute() (/lib/x86_64-linux-gnu/libclang-cpp.so.10+0x1ccbe58)
 #8 0x00007ffff6f538a1 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/lib/x86_64-linux-gnu/libclang-cpp.so.10+0x1c848a1)
 #9 0x00007ffff6ffedaf clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/lib/x86_64-linux-gnu/libclang-cpp.so.10+0x1d2fdaf)
#10 0x000000000041229d cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/usr/lib/llvm-10/bin/clang+0x41229d)
#11 0x00000000004105b1 (/usr/lib/llvm-10/bin/clang+0x4105b1)
#12 0x000000000041036d main (/usr/lib/llvm-10/bin/clang+0x41036d)
#13 0x00007ffff07220b3 __libc_start_main /build/glibc-eX1tMB/glibc-2.31/csu/../csu/libc-start.c:342:3
#14 0x000000000040d7ce _start (/usr/lib/llvm-10/bin/clang+0x40d7ce)
clang: error: unable to execute command: Segmentation fault (core dumped)
clang: error: clang frontend command failed due to signal (use -v to see invocation)
clang version 10.0.0-4ubuntu1 
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
clang: note: diagnostic msg: PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash backtrace, preprocessed source, and associated run script.
[Detaching after vfork from child process 919294]
clang: error: unable to execute command: Segmentation fault (core dumped)
clang: note: diagnostic msg: Error generating preprocessed source(s).
[Inferior 1 (process 917701) exited with code 0376]
(gdb) 
```

Thanks!
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzFWE1v4zgS_TXOhZAgyZZtHXJInGRngAw26PQs9mZQFGVzWhINknLc_ev3FaXYluNOOuntGcMQJH5UPRarXhWZ6-Lr5W-Klbr6YkfJYhTdjKKr7nnFhOF2zZ64RX_bFOxprSrJyvbbN-akdapZMV0yt5ZMcOt2dcVy1XDzlQaKNRoblkvmjFqtpJEF2yrOONtKjLBrbRwUsppXpTY1eq1ujYB46AiPcYwS-tuv1smaqabUXcNgyDTq__7zz7xtXMuSKIwmbDedDKVNmKg4oAfbrqX7AiqrdMNiTAqjYNJ6GTHrxnzmZiXdaHzFdvPpcjoJNiKoVNPuglXT9kPWRvKC1bqQFQ3caKt2XdfvjXW8qmRxowx1jZK71ho8Ya5uxJ23LwxWqII7yf61WGCpfhZ3gPViVnIXhnhUKsdzJQSePbIDrOQujn-p-OwD0n8F4h-D-SgrKRwc7f9s3MUeZN1WTtEsCAxH4-vRJKqfvW-v_bVBJ3587P8-FkOx273p_STzLWmFzNsVq_TqbWnJfFXADhmz0jHZbJXRTS0bx-5vlg-fbu__fXUzGt-c7AWespSNkKHVp3IMO6ylM43jxpPJxuiV4fWZ_ehi9GRe92TslixrlGB3pJElYcIWevMVtLN2EDRfkNY4m8-COMsydm1ajHoAIzWWjcaLnL6xCxvfEgoNALe9hvS6D2tvsBWBbC09sUDne5ZFDqvwHNE9Sm96_vFD1tq64Th8GKLHUZLsLXXGsY7nwH5hjPHh37jkG-m4WNMSeOmkYVsQ9BdWGl0zNFcF7ZOQ1rIsns3j8X7Zvx4cPEV8YUVbb-AjXVMEy2QPneMwsHRLvmnP0ENVbesgjk5cKhAiZgHQbpDZznA7C2StXKDzv1hQG1nxXQDaYEGhLO15UBopD19eBzKJKhXsRs2CmyLY8qqVQcNraSGFqyagJOcbDj7dydfCU1Lg0wgDRznYMag7f-hbfWZBY4kly2CjVYNdQgx6YGXN3TqQxjQaH40ODDEpNjOgDlJvPcRcWwCvhQYRwuBOGyxMceshts2TaorA0aLw7Xz2C8SmJRMF0wmW9sRNGQhdtXUTUFLulNlNBWt1naqBFcmLgi54pAlcSw2ACipggZFdyoedzPd3q_v2u0Wk69MzC_yaG14Fqi8MPkbg_cCTh2pE1RaS1I6Sa_z_bn1n5v8DEHIEG3ayeE01OWx1mP_q0B_Y2LOS5I5exEuJB9CvWOvM7PergHcXcmMkolMiDLkw2jfBrxEE9UZ1lcSzJ691TaioSMYwBCOiq1IgEtAehSjIk69AF7JZISbjbIZGoBZBX4UiQiZhEoKZSjCPCAxqUQWRCBwBOihBF4As5IaUWlJx_FEovmqQfJSwAersp0D7LpqnKyA56kcbLwroRJRqQu5ArdgUIqVgKmdjPg2x0h17DoQDXfVsP0rGEYt2EX6zEr84zcWkLBntM5H0mCr37uXBwN6ewj8bDopP5odBhj8tAQksV4-SKSUIdL-RJO_v__MHXKlPkdfRLpvHUI3JB2zxCTY-y6Nz2D61zaNawRV-QzVXYRe8-o-hmJVQMkCRnFqIi_SDC8TMgejxsehZMRdjEbHlEtwKSpdL435Az6ZLL6Qn8nriFFIGaibHatI8k1ladueofm-5sZSE6B2s7xSSyTf5YPiq5u82qZeLdLPxK-8gzUUJlQNM6RCTmM7E_HuY-vdkftxvZF_JaOOdbnE8-1HWvG_Nta5-Ank5A7AB8ukQeTLJypfWvHr8PMT7AtFPI0vT7CReZsfIpmXGZTqw6R2qfyeb4kr0Jyf8b3dStE7-1PbGQuRQNcAyH2JJx3MeH2NZeOKVxh-vUWkO0PQABwY8Af-jPHMe73wCOAO82RBvKQs-2NUe2QH2tq_2hihfLIuOaB_GWSQlYOxxEiU-83X3m8RJkuGoLeIllaYDVr4yhn_9JEtU5WLNcXCjapHwoCCnaBm0oWGrVTGA-2YB7kF2EAYY4xOMUZrH75RJUwYyk1OZ4ymO41jzewVj3kDwgIOjWZJE-RgcTFuytHS4XfZa7vIW5ycq0KgvkP-N3R_X-88kHFN5Jmz7XJV1r77TywkFNmU8Seh5UD8ZrisqZjhPdYrftzI_c7-yZ5dkvn6hl9afc5nTTHaujM2va7A7dT7KFR29vEOzkreVVy6QhPyBTRavCO7OYmUfns9SIQVxgLN363Van59JaEtHl61vw-lLHcXRsYZ_-Epvv8pGO6Imdii7WG19z8P97dXjLbNtTqUhZ3Qng5yksW9Y29q5ja9OkjvvOSsb0t6F2lC9zMhAz9Wpv4L1l7VUs7uuulrgnP6c4PbXq9RMMzmSnlBUzTIUl8wKnIBd-JErgCzJJvsrgF_vM9-35i2pZCvZSMP766Qzy5-jDMkOC_29QXmuMM-zy9HFxiwi8gBoRTZ6UqjTBfyARePZ9HDjsb_UeuXG7fOaN3S5Hl8Ul-MiG2f8wilXycuF37GiNf3dF6nu79TP3opftKa6HHrFCrja3N-RdJH9HOAQ95cUjk4w1rYS6u9SsOr0Yn0p0kzmyF5ykqRyOovSWTQFbyD78kk8G8cXFc9lZS9hnVGSNPKJeRF0aZXeXKjLJALBxTGe2Pk0LItZJGUZpeMs5bzMR5MIdYqq9s56YS49JPJgdFbKuoMnX8AREddSenWQz1u31ubSSLfRCEd54ZVfevD_A25HoDM">