The current state machine code assumes a 1-1 relationship between generated type and user method. That's not true for static closure environments (lambdas with no captured variables) -- they can have multiple methods pointing to the same frame.
This can probably be repaired by tracking the individual closure methods instead of the environment. Those should be unique.