Home | History | Annotate | Download | only in dmd

Lines Matching refs:prm

1629                 Parameter prm = tfld.parameterList[i];
1630 //printf("\tprm = %s%s\n", (prm.storageClass&STC.ref_?"ref ":"").ptr, prm.ident.toChars());
1631 stc = (prm.storageClass & STC.ref_) | (p.storageClass & STC.scope_);
1632 if ((p.storageClass & STC.ref_) != (prm.storageClass & STC.ref_))
1634 if (!(prm.storageClass & STC.ref_))
1705 if (fs.prm.type)
1707 fs.prm.type = fs.prm.type.typeSemantic(loc, sc);
1708 fs.prm.type = fs.prm.type.addStorageClass(fs.prm.storageClass);
1709 fs.lwr = fs.lwr.implicitCastTo(sc, fs.prm.type);
1711 if (fs.upr.implicitConvTo(fs.prm.type) || (fs.prm.storageClass & STC.ref_))
1713 fs.upr = fs.upr.implicitCastTo(sc, fs.prm.type);
1717 // See if upr-1 fits in prm.type
1721 if (!limit.implicitConvTo(fs.prm.type))
1723 fs.upr = fs.upr.implicitCastTo(sc, fs.prm.type);
1736 fs.prm.type = fs.lwr.type;
1742 fs.prm.type = fs.lwr.type;
1749 fs.prm.type = ea.type;
1753 fs.prm.type = fs.prm.type.addStorageClass(fs.prm.storageClass);
1755 if (fs.prm.type.ty == Terror || fs.lwr.op == EXP.error || fs.upr.op == EXP.error)
1800 if (fs.prm.type.isscalar())
1813 if (fs.prm.type.isscalar())
1832 if ((fs.prm.storageClass & STC.ref_) && fs.prm.type.equals(fs.key.type))
1835 auto v = new AliasDeclaration(loc, fs.prm.ident, fs.key);
1840 ie = new ExpInitializer(loc, new CastExp(loc, new VarExp(loc, fs.key), fs.prm.type));
1841 auto v = new VarDeclaration(loc, fs.prm.type, fs.prm.ident, ie);
1842 v.storage_class |= STC.temp | STC.foreach_ | (fs.prm.storageClass & STC.ref_);
1844 if (fs.key.range && !fs.prm.type.isMutable())
1851 if (fs.prm.storageClass & STC.ref_)
1853 if (fs.key.type.constConv(fs.prm.type) == MATCH.nomatch)
1855 fs.error("argument type mismatch, `%s` to `ref %s`", fs.key.type.toChars(), fs.prm.type.toChars());
1878 if (ifs.prm)
1880 /* Declare prm, which we will set to be the
1884 ifs.match = new VarDeclaration(ifs.loc, ifs.prm.type, ifs.prm.ident, ei);
1886 ifs.match.storage_class |= ifs.prm.storageClass;
1923 // Convert to boolean after declaring prm so this works:
1924 // if (S prm = S()) {}