Global bug?
Archives Forums/BlitzMax Bug Reports/Global bug?| 
 | ||
| Global a%=1 Type test Global b%=a+10 EndType | 
| 
 | ||
| Using Superstrict it gives an Unknown identifier a, whereas it is no problem to use a in methods oder functions, so I would say it is a problem with the assignment of the value to the global type variable (field works, too). | 
| 
 | ||
| Try this code you'll see that the Code inside Type/EndType gets executed before Main block's execution. 
superstrict
framework brl.standardio
global a% = sayHello("Main")
Type test
  global b% = sayHello("Test")
EndType
function sayHello(name$)
  print("Hello:	" + name)
End Function
That's why a% is not visibile in Type/EndType. | 
| 
 | ||
| Yeah I can see why it happens, Just wondered if it could be worked around in the compiler, or if it was even intentional in the first place. | 
| 
 | ||
| No idea about the compiler side, should ask Marks. This code is working, but it's not that clean... :) framework brl.blitz strict Global a% = 1 private function getA%() return a End Function public Type test Global b% = 10 + getA() EndType debuglog test.b |