am i doing something wrong here ? $ cat test.asm %ifidn __YASM_OBJFMT__,elf elf %endif %ifidn __YASM_OBJFMT__,elf32 elf32 %endif %ifidn __YASM_OBJFMT__,elf64 elf64 %endif $ yasm -f elf -e test.asm <nothing!> similar syntax has always worked fine for me in nasm: %ifidn __OUTPUT_FORMAT__,elf <stuff> %endif -mike