Controls whether or not the compiler produces additional code to emulate HP BASIC for OpenVMS VAX exception behavior. The format of the /SYNCHRONOUS_EXCEPTIONS qualifier is as follows: /[NO]SYNCHRONOUS_EXCEPTIONS Normally the compiler may reorder the execution of certain arithmetic instructions to improve performance. If your program generates an arithmetic exception, such as an overflow or divide by zero, it is possible that certain statements surrounding the offending statement may or may not have executed. For example if a source program contains: A = B C = D / E G = F and the value of E is zero, the second statement will generate a divide by zero exception. Because of instruction reordering, it is possible that the assignment of B to A may not take place. Further, it is possible that the assignment of F to G may take place even though the previous statement generated an exception. The /SYNCHRONOUS_EXCEPTIONS qualifier disables such reordering. This allows programs which rely on arithmetic exceptions occurring at precise times to execute as expected. It only impacts arithmetic exceptions and variable stores in the immediate vicinity of the excepting statement. Usually programs will produce the correct result without the /SYNCHRONOUS_EXCEPTIONS qualifier. The /NOSYNCHRONOUS_EXCEPTIONS qualifier allows the compiler to produce more efficient code. However this instruction reordering can cause incompatibilities with VAX BASIC. The default is /NOSYNCHRONOUS_EXCEPTIONS.