With GNU as .intel_syntax
, some identifiers apparently become keywords, and writing e.g.
call and
to invoke a function called and
results in
Error: invalid use of operator "and"
How do you circumvent this?
Alright, the answer seems to be:
Looking at the GAS sources, config/tc-i386-intel.c
lines 136ff are pretty clear about this.
Some GNU developer considered completely disabling some symbol names to be a reasonable way of introducing named operators. Such a small bad design decision cost me and probably many other unfortunate users a whole afternoon. Don't be that guy.