diff options
author | Iain Buclaw <ibuclaw@gdcproject.org> | 2020-06-07 16:50:46 +0200 |
---|---|---|
committer | Iain Buclaw <ibuclaw@gdcproject.org> | 2020-06-07 16:50:46 +0200 |
commit | c3a2ba10b272fd9581560604284da2a6283bcde0 (patch) | |
tree | 9ecb66c15a440f670f9cfdccbc04c2a6e76f8cef /gcc/d/dmd/cppmangle.c | |
parent | 5aaccde3db39fac7e7f6677ceccc1eadd9c6a424 (diff) | |
download | gcc-c3a2ba10b272fd9581560604284da2a6283bcde0.zip gcc-c3a2ba10b272fd9581560604284da2a6283bcde0.tar.gz gcc-c3a2ba10b272fd9581560604284da2a6283bcde0.tar.bz2 |
d: Merge upstream dmd b0df0e982
Adds a struct ParameterList to encapulate parameter and vararg
information in the front-end.
Reviewed-on: https://github.com/dlang/dmd/pull/11226
gcc/d/ChangeLog:
* dmd/MERGE: Merge upstream dmd b0df0e982.
* d-builtins.cc (build_frontend_type): Use VarArg for varargs_p.
* d-codegen.cc (declaration_type): Call TypeFunction::create with
argument VARARGnone.
(parameter_type): Likewise.
(d_build_call): Use new field names and member functions.
* d-target.cc (Target::cppParameterType): Call TypeFunction::create
with argument VARARGnone.
* types.cc (TypeVisitor::visit (TypeFunction *): Use new field names
and member functions.
Diffstat (limited to 'gcc/d/dmd/cppmangle.c')
-rw-r--r-- | gcc/d/dmd/cppmangle.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/d/dmd/cppmangle.c b/gcc/d/dmd/cppmangle.c index f39c248..ee19bd1 100644 --- a/gcc/d/dmd/cppmangle.c +++ b/gcc/d/dmd/cppmangle.c @@ -657,7 +657,8 @@ class CppMangleVisitor : public Visitor if (tf->linkage == LINKcpp) //Template args accept extern "C" symbols with special mangling { assert(tf->ty == Tfunction); - mangleFunctionParameters(tf->parameters, tf->varargs); + mangleFunctionParameters(tf->parameterList.parameters, + tf->parameterList.varargs); } } @@ -982,7 +983,8 @@ public: if (t->isref) tn = tn->referenceTo(); tn->accept(this); - mangleFunctionParameters(t->parameters, t->varargs); + mangleFunctionParameters(t->parameterList.parameters, + t->parameterList.varargs); buf->writeByte('E'); append(t); } |