You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Don't warn if impure expressions are passed to erased vals
`erased` is really the same thing as `lazy` or by-name. The semantics
implies it will not be evaluated. So it is pointless to warn if an impure
expression is passed to an erased val or parameter. Moreover, erased initializers
are often complex expressions - after all if they were not, why erase them
in the first place? These expressions are almost never recognized as pure given
the weak effect checking we currently have. So the warnings are issued
in the common case, which is bad.
0 commit comments