Ohh.. the more tests I run the weirder it gets.

This code in DF 19.1
Use Winbase.pkg

Procedure Foo String sBar
  Integer iRetVal
  Integer iMoo
  String  sMoo
  Address aMoo
  If (sBar<>"") Begin
     Move sBar to sMoo
  Move (AddressOf(iMoo)) To aMoo
  Showln "AddressOf = "  (integer(aMoo))
Send Foo ""

Input windowindex
AddressOf = 0
Which is what I expected to see because the iMoo variable isn't initialised.

Running that in DF 2020 however returns:
AddressOf = 5730308
So it is getting initialised there..

Huh.. I for one wouldn't mind if variables always are initialised.. (although I expect that I will keep on initialising the variables manually anyways, been bitten too often)