Assumes_Fall_Through

include debug.inc

Assumes_Fall_Through labelname
 

Asserts at compile time that the indicated label comes next.

labelname
Name of the label to check.

This macro may be used when one procedure falls through to another, so that an error will be raised at compile time if the condition is not met. Example:

BeginProc FirstProc
    mov        eax, 1
    Assumes_Fall_Through SecondProc        ; fall through to SecondProc
EndProc FirstProc

BeginProc SecondProc
    ... do something with EAX ...
    retd
EndProc SecondProc
 

If anybody ever inserts code between FirstProc and SecondProc, the Assumes_Fall_Through macro will raise an error, thus catching the bug automatically. This may look stupid here, but imagine if there was a 200-line comment block between the two procedures.

See Also

Debug_Test_Valid_Handle