aboutsummaryrefslogtreecommitdiff
path: root/gcc/d/dmd/expressionsem.c
diff options
context:
space:
mode:
authorIain Buclaw <ibuclaw@gdcproject.org>2021-01-07 22:00:24 +0100
committerIain Buclaw <ibuclaw@gdcproject.org>2021-01-09 23:45:46 +0100
commit7a103daef78a8f9fc9b2af7c28123f25e8fa7163 (patch)
tree39e4a1d02b2f424b4d77c4e0b0cdff875467e41d /gcc/d/dmd/expressionsem.c
parentacae7b21bc026150c2c01465e4ab0eacb20bd44d (diff)
downloadgcc-7a103daef78a8f9fc9b2af7c28123f25e8fa7163.zip
gcc-7a103daef78a8f9fc9b2af7c28123f25e8fa7163.tar.gz
gcc-7a103daef78a8f9fc9b2af7c28123f25e8fa7163.tar.bz2
d: Support deprecated, @disable, and user-defined attributes on enum members
Reviewed-on: https://github.com/dlang/dmd/pull/12108 gcc/d/ChangeLog: * dmd/MERGE: Merge upstream dmd 9bba772fa.
Diffstat (limited to 'gcc/d/dmd/expressionsem.c')
-rw-r--r--gcc/d/dmd/expressionsem.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/gcc/d/dmd/expressionsem.c b/gcc/d/dmd/expressionsem.c
index f519389..ecafd9d 100644
--- a/gcc/d/dmd/expressionsem.c
+++ b/gcc/d/dmd/expressionsem.c
@@ -1218,6 +1218,7 @@ public:
if (!f || f->errors)
return setError();
exp->checkDeprecated(sc, f);
+ exp->checkDisabled(sc, f);
exp->checkPurity(sc, f);
exp->checkSafety(sc, f);
exp->checkNogc(sc, f);
@@ -1246,6 +1247,7 @@ public:
if (!f || f->errors)
return setError();
exp->checkDeprecated(sc, f);
+ exp->checkDisabled(sc, f);
exp->checkPurity(sc, f);
exp->checkSafety(sc, f);
exp->checkNogc(sc, f);
@@ -1313,6 +1315,7 @@ public:
if (!f || f->errors)
return setError();
exp->checkDeprecated(sc, f);
+ exp->checkDisabled(sc, f);
exp->checkPurity(sc, f);
exp->checkSafety(sc, f);
exp->checkNogc(sc, f);
@@ -1341,6 +1344,7 @@ public:
if (!f || f->errors)
return setError();
exp->checkDeprecated(sc, f);
+ exp->checkDisabled(sc, f);
exp->checkPurity(sc, f);
exp->checkSafety(sc, f);
exp->checkNogc(sc, f);
@@ -3214,6 +3218,7 @@ public:
}
exp->checkDeprecated(sc, exp->f);
+ exp->checkDisabled(sc, exp->f);
exp->checkPurity(sc, exp->f);
exp->checkSafety(sc, exp->f);
exp->checkNogc(sc, exp->f);
@@ -3307,6 +3312,7 @@ public:
if (!exp->f || exp->f->errors)
return setError();
exp->checkDeprecated(sc, exp->f);
+ exp->checkDisabled(sc, exp->f);
exp->checkPurity(sc, exp->f);
exp->checkSafety(sc, exp->f);
exp->checkNogc(sc, exp->f);
@@ -3345,6 +3351,7 @@ public:
if (!exp->f || exp->f->errors)
return setError();
exp->checkDeprecated(sc, exp->f);
+ exp->checkDisabled(sc, exp->f);
exp->checkPurity(sc, exp->f);
exp->checkSafety(sc, exp->f);
exp->checkNogc(sc, exp->f);
@@ -3587,6 +3594,7 @@ public:
}
exp->checkDeprecated(sc, exp->f);
+ exp->checkDisabled(sc, exp->f);
exp->checkPurity(sc, exp->f);
exp->checkSafety(sc, exp->f);
exp->checkNogc(sc, exp->f);
@@ -8381,6 +8389,7 @@ Expression *semanticY(DotIdExp *exp, Scope *sc, int flag)
s = s->toAlias();
exp->checkDeprecated(sc, s);
+ exp->checkDisabled(sc, s);
EnumMember *em = s->isEnumMember();
if (em)