Mercurial > projects > ldc
comparison gen/functions.cpp @ 1607:207a8a438dea
Merge DMD r253: refactor: Argument => Parameter
---
dmd/arrayop.c | 30 ++++----
dmd/arraytypes.h | 2 +-
dmd/class.c | 8 +-
dmd/declaration.c | 10 ++--
dmd/declaration.h | 16 ++--
dmd/doc.c | 12 ++--
dmd/dsymbol.c | 4 +-
dmd/expression.c | 48 +++++++-------
dmd/expression.h | 32 +++++-----
dmd/func.c | 78 +++++++++++-----------
dmd/init.c | 2 +-
dmd/interpret.c | 8 +-
dmd/mtype.c | 190 ++++++++++++++++++++++++++--------------------------
dmd/mtype.h | 32 +++++-----
dmd/opover.c | 34 +++++-----
dmd/parse.c | 40 ++++++------
dmd/parse.h | 2 +-
dmd/statement.c | 90 +++++++++++++-------------
dmd/statement.h | 14 ++--
dmd/struct.c | 8 +-
dmd/template.c | 30 ++++----
gen/functions.cpp | 10 ++--
gen/functions.h | 2 +-
gen/tocall.cpp | 10 ++--
gen/typinf.cpp | 6 +-
25 files changed, 359 insertions(+), 359 deletions(-)
author | Leandro Lucarella <llucax@gmail.com> |
---|---|
date | Wed, 06 Jan 2010 15:18:20 -0300 |
parents | 8d086d552909 |
children | 40bd4a0d4870 |
comparison
equal
deleted
inserted
replaced
1606:1b24e9c7cc26 | 1607:207a8a438dea |
---|---|
114 fatal(); | 114 fatal(); |
115 } | 115 } |
116 } | 116 } |
117 | 117 |
118 // if this _Dmain() doesn't have an argument, we force it to have one | 118 // if this _Dmain() doesn't have an argument, we force it to have one |
119 int nargs = Argument::dim(f->parameters); | 119 int nargs = Parameter::dim(f->parameters); |
120 | 120 |
121 if (ismain && nargs == 0) | 121 if (ismain && nargs == 0) |
122 { | 122 { |
123 Type* mainargs = Type::tchar->arrayOf()->arrayOf(); | 123 Type* mainargs = Type::tchar->arrayOf()->arrayOf(); |
124 fty.args.push_back(new IrFuncTyArg(mainargs, false)); | 124 fty.args.push_back(new IrFuncTyArg(mainargs, false)); |
126 } | 126 } |
127 // add explicit parameters | 127 // add explicit parameters |
128 else for (int i = 0; i < nargs; i++) | 128 else for (int i = 0; i < nargs; i++) |
129 { | 129 { |
130 // get argument | 130 // get argument |
131 Argument* arg = Argument::getNth(f->parameters, i); | 131 Parameter* arg = Parameter::getNth(f->parameters, i); |
132 | 132 |
133 // reference semantics? ref, out and static arrays are | 133 // reference semantics? ref, out and static arrays are |
134 bool byref = (arg->storageClass & (STCref|STCout)) || (arg->type->toBasetype()->ty == Tsarray); | 134 bool byref = (arg->storageClass & (STCref|STCout)) || (arg->type->toBasetype()->ty == Tsarray); |
135 | 135 |
136 Type* argtype = arg->type; | 136 Type* argtype = arg->type; |
379 ADD_PA(arg_argptr) | 379 ADD_PA(arg_argptr) |
380 | 380 |
381 #undef ADD_PA | 381 #undef ADD_PA |
382 | 382 |
383 // set attrs on the rest of the arguments | 383 // set attrs on the rest of the arguments |
384 size_t n = Argument::dim(f->parameters); | 384 size_t n = Parameter::dim(f->parameters); |
385 LLSmallVector<unsigned,8> attrptr(n, 0); | 385 LLSmallVector<unsigned,8> attrptr(n, 0); |
386 | 386 |
387 for (size_t k = 0; k < n; ++k) | 387 for (size_t k = 0; k < n; ++k) |
388 { | 388 { |
389 Argument* fnarg = Argument::getNth(f->parameters, k); | 389 Parameter* fnarg = Parameter::getNth(f->parameters, k); |
390 assert(fnarg); | 390 assert(fnarg); |
391 | 391 |
392 attrptr[k] = f->fty.args[k]->attrs; | 392 attrptr[k] = f->fty.args[k]->attrs; |
393 } | 393 } |
394 | 394 |
860 return llvm::cast<llvm::FunctionType>(DtoType(f->type)); | 860 return llvm::cast<llvm::FunctionType>(DtoType(f->type)); |
861 } | 861 } |
862 | 862 |
863 ////////////////////////////////////////////////////////////////////////////////////////// | 863 ////////////////////////////////////////////////////////////////////////////////////////// |
864 | 864 |
865 DValue* DtoArgument(Argument* fnarg, Expression* argexp) | 865 DValue* DtoArgument(Parameter* fnarg, Expression* argexp) |
866 { | 866 { |
867 Logger::println("DtoArgument"); | 867 Logger::println("DtoArgument"); |
868 LOG_SCOPE; | 868 LOG_SCOPE; |
869 | 869 |
870 DValue* arg = argexp->toElem(gIR); | 870 DValue* arg = argexp->toElem(gIR); |