aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Sema/SemaInit.cpp
diff options
context:
space:
mode:
authorMariya Podchishchaeva <mariya.podchishchaeva@intel.com>2024-08-08 08:51:56 +0200
committerGitHub <noreply@github.com>2024-08-08 08:51:56 +0200
commit3606d69d0b57dc1d23a4362e376e7ad27f650c27 (patch)
tree2262777f17a14be4a69a54cca90fa696058d38bd /clang/lib/Sema/SemaInit.cpp
parentc62e2a2a4ed69d53a3c6ca5c24ee8d2504d6ba2b (diff)
downloadllvm-3606d69d0b57dc1d23a4362e376e7ad27f650c27.zip
llvm-3606d69d0b57dc1d23a4362e376e7ad27f650c27.tar.gz
llvm-3606d69d0b57dc1d23a4362e376e7ad27f650c27.tar.bz2
[clang] Fix crash when #embed used in a compound literal (#102304)
Fixes https://github.com/llvm/llvm-project/issues/102248
Diffstat (limited to 'clang/lib/Sema/SemaInit.cpp')
-rw-r--r--clang/lib/Sema/SemaInit.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/clang/lib/Sema/SemaInit.cpp b/clang/lib/Sema/SemaInit.cpp
index 90fd6df..abd4401 100644
--- a/clang/lib/Sema/SemaInit.cpp
+++ b/clang/lib/Sema/SemaInit.cpp
@@ -515,8 +515,8 @@ class InitListChecker {
uint64_t ElsCount = 1;
// Otherwise try to fill whole array with embed data.
if (Entity.getKind() == InitializedEntity::EK_ArrayElement) {
- ValueDecl *ArrDecl = Entity.getParent()->getDecl();
- auto *AType = SemaRef.Context.getAsArrayType(ArrDecl->getType());
+ auto *AType =
+ SemaRef.Context.getAsArrayType(Entity.getParent()->getType());
assert(AType && "expected array type when initializing array");
ElsCount = Embed->getDataElementCount();
if (const auto *CAType = dyn_cast<ConstantArrayType>(AType))