From 9b41dcfa60b9fe436ee68bcd5a9e401f58aac872 Mon Sep 17 00:00:00 2001 From: Reid Spencer Date: Wed, 26 May 2004 21:46:18 +0000 Subject: [PATCH] Tighten up checking on SymbolTable interface to make it illegal to pass a Type* where a Value* is expected. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13794 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/SymbolTable.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/include/llvm/SymbolTable.h b/include/llvm/SymbolTable.h index b8fd2e9d691..33b026ea257 100644 --- a/include/llvm/SymbolTable.h +++ b/include/llvm/SymbolTable.h @@ -165,8 +165,9 @@ public: /// @brief Insert a constant or type. inline void insert(const std::string &Name, Value *Val) { assert(Val && "Can't insert null type into symbol table!"); - assert((isa(Val) || isa(Val)) && - "Can only insert types and constants into a symbol table!"); + assert(!isa(Val) && "Cannot insert types with this interface!"); + assert(isa(Val) && + "Can only insert constants into a symbol table!"); insertEntry(Name, Val->getType(), Val); } @@ -201,6 +202,7 @@ public: /// @brief Remove a constant or type from the symbol table. inline Value* remove(const std::string &Name, Value *Val) { assert(Val && "Can't remove null value from symbol table!"); + assert(!isa(Val) && "Can't remove types with this interface!"); plane_iterator PI = pmap.find(Val->getType()); return removeEntry(PI, PI->second.find(Name)); }