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

    <tr>
        <th>Summary</th>
        <td>
            Debug build clang encounter assertion fail for inline asm with wrong input.
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            clang:frontend,
            crash
      </td>
    </tr>

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

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

<pre>
    Release build clang sends error message `impossible constraint in asm: can't store value into a register`.
```
void foo() {
  extern int arr[];
 asm ("" : "=r" (arr));
}
```
But debug build clang encounters assertion fails for `IntegerType::get()` with Size=0. since `int[]` is incomplete, so `ASTContext::getTypeSize()` returns 0 for it.
```
// CodeGenFunction::EmitAsmStmt in CGStmt.cpp.
if (RequiresCast) {
 unsigned Size = getContext().getTypeSize(QTy);
  Ty = llvm::IntegerType::get(getLLVMContext(), Size);
}
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJx8U8GO2zYQ_RrqMohAkbYsH3Tw2nVQID00u-idkkYyW4pUOaNN3K8vSO2mdZEUIGCOqXl8782jIbKTR2zF_knsL4VZ-RZie0e2fvqj6MJwbz-jQ0MI3WrdAL0zfgJCPxBgjCHCjERmQhC1tPMSiGznEPrgiaOxnsF6MDQLfYLeeKEODMQhIrwatyJYzwEMRJwsMUZRy1LIi5AnUcu3lcvXYAcYQxCqEeoI4vC0_Q-AXxmjT0BgYtyUCP1-bGiG3KOEUpBYpK2-xFyqJrWoY1rvLeJw-S6Dp5VhwG6dHqxA34fVM0YCQ4SRbfAwGusIxhCTKz97xgnjy31BoU9CnybkTYWoJXyxfINn-xcKfZElkPX95qXnNym1BEtgfR_mxSGjUGegkL45Pb-cg2f8yt-A0y0Z7dsFEXmNnkBmPpa_b69QV6GucA4DfkR_XX2fhGywP82WTzQ_85yHef6YdmW_LG9QdkxGfsY_VxuRzob4cUKrzykbskwQ-gIT8jvxzLN8ZP7ry_3fAwF4uec2517njdIPPJ2QP3367ZcH7GTXhvt_Iy6GVg9HfTQFtlXdHHWj97Uqbm13qDuzH_f1Dg9y1-ja9Go0_XhoKtnoeixsq6TS8lDtZVWpnSr7qts1Q4dj1TdVpfZiJ3E21pWJfhniVFiiFdtaN4emcKZDR_kBKpUjJfRpjEmBH3Jqz-kgGrqlan8pYpuAPnTrRGInnSWmf6DZssP28uOY_ielWyi8sx7zU8lx_BKDn8D6ZeWyWKNrb8wLJaNzSibLt7Ur-zALdc0z2X4-LDH8jj0Ldc0KSahrFvl3AAAA___-fFgr">