[clang] [HLSL] Implement '__builtin_hlsl_is_intangible' type trait (PR #104544)
Justin Bogner via cfe-commits
cfe-commits at lists.llvm.org
Mon Aug 26 11:10:26 PDT 2024
================
@@ -5683,6 +5685,14 @@ static bool EvaluateUnaryTypeTrait(Sema &Self, TypeTrait UTT,
return true;
return false;
}
+ case UTT_IsIntangibleType:
+ if (!T->isVoidType() && !T->isIncompleteArrayType())
+ if (Self.RequireCompleteType(TInfo->getTypeLoc().getBeginLoc(), T,
+ diag::err_incomplete_type))
+ return false;
+ DiagnoseVLAInCXXTypeTrait(Self, TInfo,
+ tok::kw___builtin_hlsl_is_intangible);
+ return Self.HLSL().IsIntangibleType(T);
----------------
bogner wrote:
I guess we don't need to check that the language is HLSL here since the type trait only exists in HLSL mode? It might be nice to put an assert here in case that ever changes for some reason.
https://github.com/llvm/llvm-project/pull/104544
More information about the cfe-commits
mailing list