@MikeHart @dawlane
Cerberus X reports this error: "Function 'Main' not found, in this situation:
When the content between "#Rem" and "#End" has a double quote (") balance incorrectly,
for example, if you do this:
code_language.cerberus:
#Rem
asdf "asdf" "
#End
Function Main:Int()
Print
End
Regarding CerberusX reporting the correct line as wrong, it also occurs with double quotes,
however, unlike the previous error, the error occurs when there is a correct balance of double quotes, that is,
you opened and closed the quotes correctly, however, the error occurs if you opened the double quotes
in one line and close the double quotes in another line.
If you start and close the double quotes on the same line, CerberusX reports the wrong line correctly.
The number of lines separating the initial double quotes from the corresponding final double quotes, will be
equal to how far Cerberus X is from the really incorrect line. For example, if the error is on line 10
and you start the quotes on one line and end on the next line, CerberusX reports the error on line 9.
If you start the quotes on one line and end two lines in front, CerberusX reports the error on line 8.
In the code below, the user typed the double quotes starting on one line and ending on the next line,
CerberusX will report the error on one line before the really wrong line.
code_language.cerberus:
#Rem
asdf "asdf
asdf"
#End
Function Main:Int()
Print ' This line incorrect. But CerberusX reports the previous line
End
In this other code, the user started the double quotes on one line and closed the double quotes
two lines ahead, in this case, CerberusX reported 2 lines before where the error really exists.
code_language.cerberus:
#Rem
asdf "asdf
asdf"
#End
' <-- CerberusX reported this line as incorrect.
Function Main:Int()
Print ' Although, the really incorrect line is this.
End