diff options
author | Chris Lattner <sabre@nondot.org> | 2005-02-22 23:13:58 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2005-02-22 23:13:58 +0000 |
commit | a08976b092ed15a0d31a1db80837039f7b04ed79 (patch) | |
tree | 591fd689fccf34ba295f6eeaf52022a8085cee54 /lib | |
parent | 032f235f022824f93d0ae866b7707a688ade4b95 (diff) |
C++ is not a functional programming language.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20274 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r-- | lib/AsmParser/llvmAsmParser.y | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/lib/AsmParser/llvmAsmParser.y b/lib/AsmParser/llvmAsmParser.y index 0f2af20447..967670f65f 100644 --- a/lib/AsmParser/llvmAsmParser.y +++ b/lib/AsmParser/llvmAsmParser.y @@ -1024,8 +1024,9 @@ UpRTypes : '\\' EUINT64VAL { // Type UpReference } | UpRTypesV '(' ArgTypeListI ')' { // Function derived type? std::vector<const Type*> Params; - mapto($3->begin(), $3->end(), std::back_inserter(Params), - std::mem_fun_ref(&PATypeHolder::get)); + for (std::list<llvm::PATypeHolder>::iterator I = $3->begin(), + E = $3->end(); I != E; ++I) + Params.push_back(*I); bool isVarArg = Params.size() && Params.back() == Type::VoidTy; if (isVarArg) Params.pop_back(); @@ -1050,9 +1051,10 @@ UpRTypes : '\\' EUINT64VAL { // Type UpReference } | '{' TypeListI '}' { // Structure type? std::vector<const Type*> Elements; - mapto($2->begin(), $2->end(), std::back_inserter(Elements), - std::mem_fun_ref(&PATypeHolder::get)); - + for (std::list<llvm::PATypeHolder>::iterator I = $2->begin(), + E = $2->end(); I != E; ++I) + Elements.push_back(*I); + $$ = new PATypeHolder(HandleUpRefs(StructType::get(Elements))); delete $2; } |