We found an interesting way to stop the AVM dead in its tracks today. Trying to compile or syntax check the code below (in PDS 11.4.0 on Windows 64 bit) stops the AVM and sometimes even crashes PDS completely.
It is remarkably difficult to track down an error (caused by fat fingers) such as the one in the code below when it is in a huge class and PDS won't show you what line is causing the error.
CLASS StopAVM:
CONSTRUCTOR PUBLIC StopAVM ( ):
END CONSTRUCTOR.
METHOD PRIVATE VOID Okay():
DEFINE VARIABLE oResult AS System.Windows.Forms.DialogResult NO-UNDO.
oResult = GetConfirmation(System.Windows.Forms.`BoxButtons:OK).
END METHOD.
METHOD PRIVATE System.Windows.Forms.DialogResult GetConfirmation(oButtons AS System.Windows.Forms.MessageBoxButtons):
RETURN.
END METHOD.
DESTRUCTOR PUBLIC StopAVM ( ):
END DESTRUCTOR.
END CLASS.
We found an interesting way to stop the AVM dead in its tracks today. Trying to compile or syntax check the code below (in PDS 11.4.0 on Windows 64 bit) stops the AVM and sometimes even crashes PDS completely.
It is remarkably difficult to track down an error (caused by fat fingers) such as the one in the code below when it is in a huge class and PDS won't show you what line is causing the error.
CLASS StopAVM:
CONSTRUCTOR PUBLIC StopAVM ( ):
END CONSTRUCTOR.
METHOD PRIVATE VOID Okay():
DEFINE VARIABLE oResult AS System.Windows.Forms.DialogResult NO-UNDO.
oResult = GetConfirmation(System.Windows.Forms.`BoxButtons:OK).
END METHOD.
METHOD PRIVATE System.Windows.Forms.DialogResult GetConfirmation(oButtons AS System.Windows.Forms.MessageBoxButtons):
RETURN.
END METHOD.
DESTRUCTOR PUBLIC StopAVM ( ):
END DESTRUCTOR.
END CLASS.
Flag this post as spam/abuse.
It's any backtick in a class name if it doesn't also contain square brackets. The compiler expects it to be a generic name.
We found an interesting way to stop the AVM dead in its tracks today. Trying to compile or syntax check the code below (in PDS 11.4.0 on Windows 64 bit) stops the AVM and sometimes even crashes PDS completely.
It is remarkably difficult to track down an error (caused by fat fingers) such as the one in the code below when it is in a huge class and PDS won't show you what line is causing the error.
CLASS StopAVM:
CONSTRUCTOR PUBLIC StopAVM ( ):
END CONSTRUCTOR.
METHOD PRIVATE VOID Okay():
DEFINE VARIABLE oResult AS System.Windows.Forms.DialogResult NO-UNDO.
oResult = GetConfirmation(System.Windows.Forms.`BoxButtons:OK).
END METHOD.
METHOD PRIVATE System.Windows.Forms.DialogResult GetConfirmation(oButtons AS System.Windows.Forms.MessageBoxButtons):
RETURN.
END METHOD.
DESTRUCTOR PUBLIC StopAVM ( ):
END DESTRUCTOR.
END CLASS.
Flag this post as spam/abuse.
Flag this post as spam/abuse.
I tested in 11.6 and inserting a backtick anywhere in a class name causes the crash. The code has changed a bit since previous versions so the problem may have been less widespread before.