http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57950
--- Comment #10 from Manuel López-Ibáñez <manu at gcc dot gnu.org> --- (In reply to Andreas Schwab from comment #9) > The assembler only sees literal newlines, it does not know how they were > written in the source. Is there other way to generate literal newlines apart from printing a literal newline? And why it matters how they were written in the source code? The point is that GCC should see that it is a literal newline and hint GAS that it was actually in the same line (or not) in the original source code. GAS does not need to know anything. > The compiler cannot put line directives in the middle of an assembler string > by itself because it cannot know how the assembler will interpret the text > around the newline. This will surely break things. If there are restrictions on the lines where the location directives can appear in an assembler file, then it is a problem, yes. I wasn't aware of such restrictions, I was assuming that they were basically like preprocessor directives. Oh, well, another reason why an integrated assembler is such a good idea...