aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Sema/SemaExprMember.cpp
diff options
context:
space:
mode:
authorChris Bieneman <chris.bieneman@me.com>2022-04-13 20:47:28 -0500
committerChris Bieneman <chris.bieneman@me.com>2022-04-14 13:32:51 -0500
commit3efad612d234f938d5012317cfb827e2bf8a1ee7 (patch)
tree990c8e265a958af2f315373aff3f510c1fc672b3 /clang/lib/Sema/SemaExprMember.cpp
parent02eab52866775f1476028129d1b114235fddc127 (diff)
downloadllvm-3efad612d234f938d5012317cfb827e2bf8a1ee7.zip
llvm-3efad612d234f938d5012317cfb827e2bf8a1ee7.tar.gz
llvm-3efad612d234f938d5012317cfb827e2bf8a1ee7.tar.bz2
[HLSL] Pointers are unsupported in HLSL
HLSL does not support pointers or references. This change generates errors in sema for generating pointer, and reference types as well as common operators (address-of, dereference, arrow), which are used with pointers and are unsupported in HLSL. Reviewed By: aaron.ballman Differential Revision: https://reviews.llvm.org/D123167
Diffstat (limited to 'clang/lib/Sema/SemaExprMember.cpp')
-rw-r--r--clang/lib/Sema/SemaExprMember.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaExprMember.cpp b/clang/lib/Sema/SemaExprMember.cpp
index cb95f70..d5e7a2c 100644
--- a/clang/lib/Sema/SemaExprMember.cpp
+++ b/clang/lib/Sema/SemaExprMember.cpp
@@ -1736,6 +1736,9 @@ ExprResult Sema::ActOnMemberAccessExpr(Scope *S, Expr *Base,
DeclarationName Name = NameInfo.getName();
bool IsArrow = (OpKind == tok::arrow);
+ if (getLangOpts().HLSL && IsArrow)
+ return ExprError(Diag(OpLoc, diag::err_hlsl_operator_unsupported) << 2);
+
NamedDecl *FirstQualifierInScope
= (!SS.isSet() ? nullptr : FindFirstQualifierInScope(S, SS.getScopeRep()));