Upgrade Guides for Genero BDL / 2.0x upgrade guide |
An important compiler bug has been fixed in 2.0x. This bug is referenced as #5752: When you declare a module variable with the same name as a global variable, a compilation error must be thrown.
GLOBALS DEFINE level INTEGER END GLOBALS
GLOBALS "globals.4gl" DEFINE level INTEGER FUNCTION func1() LET level = 123 -- is this the global or the module variable? END FUNCTION
In version 1.3x, the compiler did not detect this and the module variable was used, but one might want to use the global variable instead!
-4319: The symbol 'variable-name' has been defined more than once.
You can easily fix this by renaming the module variable. There is no risk to do this modification, since the module variable was used in 1.3x, not the global variable.
Remark: The compiler now also detects duplicate global variable declaration. Just remove the duplicated lines in your source.