IF1 a IF2
Blok IF1 se vyhodnocuje při prvním průchodu sestavení.
Blok IF2 se vyhodnocuje při každém průchodu sestavení, pokud option:SETIF2 je TRUE.
Syntaxe
IF1;;
IF2;;
Poznámky
Úplnou syntaxi najdete v tématu KDYŽ .
Na rozdíl od verze 5.1 provádí MASM 6.1 a vyšší většinu své práce na prvním průchodu a pak provede tolik následných průchodů, kolik je potřeba. Naproti tomu MASM 5.1 vždy sestavuje ve dvou zdrojových průchodech. V důsledku toho může být nutné upravit nebo odstranit některé konstruktory závislé na průchodu v rámci MASM 6.1 a vyšší.
Direktivy se dvěma průchody
Aby se zajistila kompatibilita, MASM 6.1 a vyšší podporují direktivy 5.1 odkazující na dva průchody. Patří mezi ně . ERR1, . ERR2, IF1, IF2, ELSEIF1 a ELSEIF2. U konstruktorů s druhým předáním je nutné zadat OPTION SETIF2. Bez OPTION SETIF2, if2 a . Direktivy ERR2 způsobují chybu:
.ERR2 not allowed : single-pass assembler
MASM 6.1 a vyšší zpracovávají konstrukce prvního průchodu odlišně. Zachází s ním . Směrnice ERR1 jako . ERR a direktiva IF1 jako IF.