The problem is that UniqueIdentifierGenerator always start at 1 and when you have two compilation units generating temp variable names in the same global scope we run into naming conflicts.

I'm fine getting back to this in the future.