switch t := Unalias(t).(type) {
case *Named:
if t.stateHas(hasFinite) {
- return *t.finite
+ return t.finite
}
if i, ok := check.objPathIdx[t.obj]; ok {
// another call to finiteSize, we have to avoid overwriting t.finite.
// Otherwise, the race detector will be tripped.
if !t.stateHas(hasFinite) {
- t.finite = &isFinite
+ t.finite = isFinite
t.setState(hasFinite)
}
fromRHS Type // the declaration RHS this type is derived from
tparams *TypeParamList // type parameters, or nil
underlying Type // underlying type, or nil
- finite *bool // whether the type has finite size, or nil
+ finite bool // whether the type has finite size
// methods declared for this type (not the method set of this type)
// Signatures are type-checked lazily.
switch t := Unalias(t).(type) {
case *Named:
if t.stateHas(hasFinite) {
- return *t.finite
+ return t.finite
}
if i, ok := check.objPathIdx[t.obj]; ok {
// another call to finiteSize, we have to avoid overwriting t.finite.
// Otherwise, the race detector will be tripped.
if !t.stateHas(hasFinite) {
- t.finite = &isFinite
+ t.finite = isFinite
t.setState(hasFinite)
}
fromRHS Type // the declaration RHS this type is derived from
tparams *TypeParamList // type parameters, or nil
underlying Type // underlying type, or nil
- finite *bool // whether the type has finite size, or nil
+ finite bool // whether the type has finite size
// methods declared for this type (not the method set of this type)
// Signatures are type-checked lazily.