diff options
Diffstat (limited to 'utils/TableGen/FileParser.y')
-rw-r--r-- | utils/TableGen/FileParser.y | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/utils/TableGen/FileParser.y b/utils/TableGen/FileParser.y index 8ae2ef9ff1..0f0c4689e8 100644 --- a/utils/TableGen/FileParser.y +++ b/utils/TableGen/FileParser.y @@ -645,7 +645,8 @@ ClassInst : CLASS ClassName { }; DefInst : DEF DefName ObjectBody { - $3->resolveReferences(); + if (CurMultiClass == 0) // Def's in multiclasses aren't really defs. + $3->resolveReferences(); // If ObjectBody has template arguments, it's an error. assert($3->getTemplateArgs().empty() && "How'd this get template args?"); @@ -749,6 +750,9 @@ DefMInst : DEFM ID { CurDefmPrefix = $2; } ':' SubClassRef ';' { exit(1); } Records.addDef(CurRec); + + CurRec->resolveReferences(); + CurRec = 0; } |