#version 130 out int fooOut; void main() { int defined = 2; int undefined; int fooInt; defined = fooOut; fooOut = undefined; /* Technically at this point fooOut is still undefined. But it was * initialized that is what the unitialized warning detects in any * case. "Real undefined" is beyond the scope of what mesa is/should * detect*/ defined = fooOut; }