diff options
author | Iain Buclaw <ibuclaw@gdcproject.org> | 2021-01-07 18:03:33 +0100 |
---|---|---|
committer | Iain Buclaw <ibuclaw@gdcproject.org> | 2021-01-07 18:22:36 +0100 |
commit | dddea6d4d81cac76ff64cde178e2d5f7fe09fb55 (patch) | |
tree | f8c2345d5a980c6523798c1388a777e05fdaf500 /gcc/d/dmd/expressionsem.c | |
parent | d54029179cbe817eaf9b6899339b0151cff3c00e (diff) | |
download | gcc-dddea6d4d81cac76ff64cde178e2d5f7fe09fb55.zip gcc-dddea6d4d81cac76ff64cde178e2d5f7fe09fb55.tar.gz gcc-dddea6d4d81cac76ff64cde178e2d5f7fe09fb55.tar.bz2 |
d: Merge upstream dmd 9038e64c5.
Adds support for using user-defined attributes on function arguments and
single-parameter alias declarations. These attributes behave analogous
to existing UDAs.
gcc/d/ChangeLog:
* dmd/MERGE: Merge upstream dmd 9038e64c5.
* d-builtins.cc (build_frontend_type): Update call to
Parameter::create.
Diffstat (limited to 'gcc/d/dmd/expressionsem.c')
-rw-r--r-- | gcc/d/dmd/expressionsem.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/d/dmd/expressionsem.c b/gcc/d/dmd/expressionsem.c index 7dfe995..f519389 100644 --- a/gcc/d/dmd/expressionsem.c +++ b/gcc/d/dmd/expressionsem.c @@ -2051,7 +2051,7 @@ public: for (size_t i = 0; i < cd->baseclasses->length; i++) { BaseClass *b = (*cd->baseclasses)[i]; - args->push(new Parameter(STCin, b->type, NULL, NULL)); + args->push(new Parameter(STCin, b->type, NULL, NULL, NULL)); } tded = new TypeTuple(args); } @@ -2100,7 +2100,8 @@ public: return setError(); args->push(new Parameter(arg->storageClass, arg->type, (e->tok2 == TOKparameters) ? arg->ident : NULL, - (e->tok2 == TOKparameters) ? arg->defaultArg : NULL)); + (e->tok2 == TOKparameters) ? arg->defaultArg : NULL, + arg->userAttribDecl)); } tded = new TypeTuple(args); break; |