> > > A notice would be consistent with what happens with: `function &f() { > return; }; f();`. But don’t add new notices in patch releases, otherwise > you may break without warning a non-trivial amount of code that conflates > notices with fatal errors. The bug is not serious enough to warrant such a > risk. >
But isn't a bug that the notice is missing in the first place? In my opinion, whether it should be deprecated is not a separate > question, but the one we should answer first. If we're not going to > deprecate/remove the auto-conversion to a reference, we may as well drop > the notice altogether, instead of adding a further notice. > Hmm I am not exactly sure if I agree with you. Whatever we decide, it will happen in a new version. It feels right to fix the current supported versions. Regarding the deprecation decision, I checked the RFC https://wiki.php.net/rfc/generators and I found this line: *Only generators specifying the & modifier can be iterated by ref. If you > try to iterate a non-ref generator by-ref an E_ERROR is thrown.* Correct me if I am wrong, but this phrase refers to our case. If I understand this correctly it should normally throw an E_ERROR so we should continue perhaps with the deprecation? Other than this, I don't have a strong opinion on if we should deprecate or not this case.