If you accidentally omit the type in an Array(..) declaration like
Public const ActCode() As Byte = Array(0xc9, 0x44 )
If you compile in Debug mode it accepts it and causes odd runtime behaviour later on . If you compile in Release mode you get an incompatible type error during compilation.
As I wrote in that thread Array(1, 2, 3) = Array As Object(1, 2, 3).
The debugger is indeed more lenient in some cases. It is related to the very complex way that "remote values" are represented.