From 554af5cd62513799b895a1c15b0d3ae0e7b16a2c Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Wed, 30 Jul 2003 04:31:17 +0000 Subject: [PATCH] Implement TODO: disallow 'def's with template arguments. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7409 91177308-0d34-0410-b5e6-96231b3b80d8 --- support/tools/TableGen/FileParser.y | 7 ++++++- utils/TableGen/FileParser.y | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/support/tools/TableGen/FileParser.y b/support/tools/TableGen/FileParser.y index 7a374e178fd..6ebcf7691b1 100644 --- a/support/tools/TableGen/FileParser.y +++ b/support/tools/TableGen/FileParser.y @@ -432,7 +432,12 @@ ClassInst : CLASS ObjectBody { }; DefInst : DEF ObjectBody { - // TODO: If ObjectBody has template arguments, it's an error. + if (!$2->getTemplateArgs().empty()) { + err() << "Def '" << $2->getName() + << "' is not permitted to have template arguments!\n"; + abort(); + } + // If ObjectBody has template arguments, it's an error. if (Records.getDef($2->getName())) { err() << "Def '" << $2->getName() << "' already defined!\n"; abort(); diff --git a/utils/TableGen/FileParser.y b/utils/TableGen/FileParser.y index 7a374e178fd..6ebcf7691b1 100644 --- a/utils/TableGen/FileParser.y +++ b/utils/TableGen/FileParser.y @@ -432,7 +432,12 @@ ClassInst : CLASS ObjectBody { }; DefInst : DEF ObjectBody { - // TODO: If ObjectBody has template arguments, it's an error. + if (!$2->getTemplateArgs().empty()) { + err() << "Def '" << $2->getName() + << "' is not permitted to have template arguments!\n"; + abort(); + } + // If ObjectBody has template arguments, it's an error. if (Records.getDef($2->getName())) { err() << "Def '" << $2->getName() << "' already defined!\n"; abort();