Summary
The IDE reported the warning "<variablename> shadows a variable in an enclosing scope" on a shared method of a class.
The same local variable name is used in another, non-shared method, but that shouldn't cause such a warning.
I discovered a non-shared / non-computed property with the same name that I had forgotten about and didn't need and removed it, but the error would not go away even after running the app or running the Analyzer.
I quit and restarted Objo and the warning went away. I am assuming the warning was triggered by the presence of that same-named property, but if so I'm puzzled as to why I didn't get the warning when I drafted the other method using the same local variable name.
I was going to say it wouldn't be "shadowing" anyway to name a local variable the same as a property, they're in different scopes and one scope doesn't enclose the other. But I suppose if you squint a little (or if you're the Objo compiler, lol), you could call the class the enclosing scope of the method, and a local variable with the same name as a class property would then in a sense be "shadowing" the property. But I tend to think of shadowing as something that happens with methods in an inheriting class when you don't explicitly override a virtual method in the parent. Which per our earlier convo on that topic, Objo doesn't even allow.
I'd suggest that the clear warning would have been, "<variable> has the same name as a property of this class". It's specific enough that I'm not asking, "WHAT enclosing scope? Where??" If it's possible / practical to be specific, messages should be.
Objo Studio Version
26.6.8