================
@@ -3959,6 +3959,14 @@ llvm::Constant
*CodeGenFunction::EmitCheckTypeDescriptor(QualType T) {
uint16_t TypeInfo = 0;
bool IsBitInt = false;
+ // isIntegerType() never holds for scoped enums, and getAs<BitIntType> can't
+ // see through the EnumType node to a __BitInt underlying type even for
+ // unscoped enums.
+ QualType BackupT = T;
+ if (const EnumType *ET = T->getAs<EnumType>())
+ if (ET->getDecl()->isComplete())
----------------
zwuis wrote:
AFAIK clang doesn't generate LLVM IR if the frontend detects errors. I guess
this function is unreachable if the enum is an incomplete type.
https://github.com/llvm/llvm-project/pull/216460
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits