aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/CIR/CodeGen/CIRGenModule.cpp
diff options
context:
space:
mode:
authorMorris Hafner <mmha@users.noreply.github.com>2025-07-31 17:34:41 +0200
committerGitHub <noreply@github.com>2025-07-31 17:34:41 +0200
commit8a5d3631230ab4ce7ede76df2faf8b6494fc876e (patch)
tree43d50a9433768cd8302d090183bb6ccc36e29d3d /clang/lib/CIR/CodeGen/CIRGenModule.cpp
parent99d70e09a9676d63513a496f52acf93ca7167f00 (diff)
downloadllvm-8a5d3631230ab4ce7ede76df2faf8b6494fc876e.zip
llvm-8a5d3631230ab4ce7ede76df2faf8b6494fc876e.tar.gz
llvm-8a5d3631230ab4ce7ede76df2faf8b6494fc876e.tar.bz2
[CIR] Upstream support for function-level variable decompositions (#151073)
This implements support for structured bindings on a function scope level. It does not add support for global structured bindings.
Diffstat (limited to 'clang/lib/CIR/CodeGen/CIRGenModule.cpp')
-rw-r--r--clang/lib/CIR/CodeGen/CIRGenModule.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/clang/lib/CIR/CodeGen/CIRGenModule.cpp b/clang/lib/CIR/CodeGen/CIRGenModule.cpp
index 01f365f..d0f9fc3 100644
--- a/clang/lib/CIR/CodeGen/CIRGenModule.cpp
+++ b/clang/lib/CIR/CodeGen/CIRGenModule.cpp
@@ -1308,8 +1308,13 @@ void CIRGenModule::emitTopLevelDecl(Decl *decl) {
break;
}
- case Decl::Var: {
+ case Decl::Var:
+ case Decl::Decomposition: {
auto *vd = cast<VarDecl>(decl);
+ if (isa<DecompositionDecl>(decl)) {
+ errorNYI(decl->getSourceRange(), "global variable decompositions");
+ break;
+ }
emitGlobal(vd);
break;
}