There is no feature, it only sets the static evaluation of the language itself.
Think for a second, if the go.mod stricture locked in the entire thing, you’d just be told to not upgrade.
The entire point of the system is that it’s possible to update language-level semantics while allowing for the rest to progress for everybody.
Setting go.mod means you get stdlib updates, but the semantics of the for loop does not change. And if the designers decide to add similar breaking changes in the future (change string literals or whatever), you’ll also be ignoring those.
So your original complaint was "being able to opt into nBC is bad uwu", and now your complaint is that you want to mix and match if a future nBC change you do like comes around?
Think for a second, if the go.mod stricture locked in the entire thing, you’d just be told to not upgrade.
The entire point of the system is that it’s possible to update language-level semantics while allowing for the rest to progress for everybody.
Setting go.mod means you get stdlib updates, but the semantics of the for loop does not change. And if the designers decide to add similar breaking changes in the future (change string literals or whatever), you’ll also be ignoring those.