reproduced. Looking into it.
v2.6 has the same problem.
It's a 1 time issue though, every time you re-generate afterwards it won't alter it again.
(edit) I think the problem is this:
this is a region in the template:
<[ UserCodeRegion "AdditionalNamespaces" ]>
// __LLBLGENPRO_USER_CODE_REGION_START AdditionalNamespaces
// __LLBLGENPRO_USER_CODE_REGION_END
<[ EndUserCodeRegion ]>
The parser sees the two TDL tokens for start and end. The regular expression to match the region markers matches:
// __LLBLGENPRO_USER_CODE_REGION_START AdditionalNamespaces
// __LLBLGENPRO_USER_CODE_REGION_END
so till 'END' but not the CRLF.
The problem is caused by the EndUserCodeRegion statement. As it isn't placed into the output, the tabs in front of it are emitted into the output as that's space between the 'END' and the EndUserCodeRegion token.
The problem is: changing this will cause everyone to get changed generated code all of a sudden. Keeping it will give the problem you ran into: the second time you generate code it's different from the first time.
We'll therefore postpone this fix till v3 due to the impact for existing users. As said: if you generate the code again on top of the existing code, you won't see a change in the generated code anymore. Sorry for this inconvenience, however there's little we can do about it without affecting a lot of people. With a version change (new version) we can warn up front and people expect changes, however a patch ... that should work without problems.