[clang] 4d46b7a - [clang][bytecode][NFC] Report error if HasGroup is set without types (#207334)
via cfe-commits
cfe-commits at lists.llvm.org
Fri Jul 3 02:02:05 PDT 2026
Author: Timm Baeder
Date: 2026-07-03T11:02:01+02:00
New Revision: 4d46b7afdab1747618fdd0f1480ae59d8352eeea
URL: https://github.com/llvm/llvm-project/commit/4d46b7afdab1747618fdd0f1480ae59d8352eeea
DIFF: https://github.com/llvm/llvm-project/commit/4d46b7afdab1747618fdd0f1480ae59d8352eeea.diff
LOG: [clang][bytecode][NFC] Report error if HasGroup is set without types (#207334)
Setting `HasGroup = 1` in tablegen without the types being non-empty
causes problems later, so diagnose it.
Added:
Modified:
clang/utils/TableGen/ClangOpcodesEmitter.cpp
Removed:
################################################################################
diff --git a/clang/utils/TableGen/ClangOpcodesEmitter.cpp b/clang/utils/TableGen/ClangOpcodesEmitter.cpp
index 154969cf49b04..7fef309e127ef 100644
--- a/clang/utils/TableGen/ClangOpcodesEmitter.cpp
+++ b/clang/utils/TableGen/ClangOpcodesEmitter.cpp
@@ -320,6 +320,11 @@ void ClangOpcodesEmitter::EmitGroup(raw_ostream &OS, StringRef N,
const auto *Types = R->getValueAsListInit("Types");
const auto &Args = R->getValueAsListOfDefs("Args");
+ if (Types->empty()) {
+ PrintFatalError("HasGroup only makes sense for opcodes with types");
+ return;
+ }
+
Twine EmitFuncName = "emit" + N;
// Emit the prototype of the group emitter in the header.
More information about the cfe-commits
mailing list