Index: mlir/test/mlir-tblgen/enums-gen-empty.td =================================================================== --- /dev/null +++ mlir/test/mlir-tblgen/enums-gen-empty.td @@ -0,0 +1,2 @@ +// RUN: mlir-tblgen -gen-enum-decls -I %S/../../include %s +// RUN: mlir-tblgen -gen-enum-defs -I %S/../../include %s Index: mlir/tools/mlir-tblgen/EnumsGen.cpp =================================================================== --- mlir/tools/mlir-tblgen/EnumsGen.cpp +++ mlir/tools/mlir-tblgen/EnumsGen.cpp @@ -536,7 +536,7 @@ static bool emitEnumDecls(const RecordKeeper &recordKeeper, raw_ostream &os) { llvm::emitSourceFileHeader("Enum Utility Declarations", os); - auto defs = recordKeeper.getAllDerivedDefinitions("EnumAttrInfo"); + auto defs = recordKeeper.getAllDerivedDefinitionsIfDefined("EnumAttrInfo"); for (const auto *def : defs) emitEnumDecl(*def, os); @@ -574,7 +574,7 @@ static bool emitEnumDefs(const RecordKeeper &recordKeeper, raw_ostream &os) { llvm::emitSourceFileHeader("Enum Utility Definitions", os); - auto defs = recordKeeper.getAllDerivedDefinitions("EnumAttrInfo"); + auto defs = recordKeeper.getAllDerivedDefinitionsIfDefined("EnumAttrInfo"); for (const auto *def : defs) emitEnumDef(*def, os);