This is another (final?) stab at making us able to parse our own asm output.
On Windows, it's not uncommon to have @'s and ?'s show up in symbol names. Our parser didn't like this. The ?'s were rejected, and the @'s were interpreted as trying to reference something like PLT or GOT.
My previous solution of quoting these names didn't work, as for some targets we use the gas assembler, which doesn't like quotes in certain places (most notably in .def directives).
Instead, I think we should try to parse these symbol names without quotes, as gas does.
This is probably not perfect, but should allow us to start being able to parse our asm output on windows.
adding support for ? in a name can be an independent change, no?
btw, on linux gas rejects
.globl foo?bar
Should be reject too? I am tempted to just accept it everywhere as an extension, since it doesn't look ambiguous (unlike the @)