Modify rules for default variability of pointed-to types.

Now, the pointed-to type is always uniform by default (if an explicit
rate qualifier isn't provided).  This rule is easier to remember and
seems to work well in more cases than the previous rule from 6d7ff7eba2.
This commit is contained in:
Matt Pharr
2012-02-29 14:21:03 -08:00
parent 2a1c7f2d47
commit 55b81e35a7
8 changed files with 31 additions and 35 deletions

View File

@@ -986,10 +986,8 @@ PointerType::ResolveUnboundVariability(Variability v) const {
Assert(v != Unbound);
Variability ptrVariability = (variability == Unbound) ? v : variability;
Variability childVariability = (ptrVariability == Varying) ?
Uniform : Varying;
return new PointerType(baseType->ResolveUnboundVariability(childVariability),
ptrVariability, isConst);
const Type *resolvedBaseType = baseType->ResolveUnboundVariability(Uniform);
return new PointerType(resolvedBaseType, ptrVariability, isConst);
}