I figured (a little late) that you were talking about a typical way of writing control characters, of which TCC is completely oblivious. The special escape sequences in TCC don't match perfectly with them ... ^q ... ^k ... ^s ...I think you're tripping over the feature which uses escaped letters to represent various troublesome characters -- ^Q for a double quote, ^C for a comma, ^K for a strong quote, and so on. Presumably the parser lowercases the letter before checking for these special combos. As it happens, ^A has no special meaning, so the (now lowercased) letter is not replaced with any symbol.
You're operating under the misconception that your aliases / batch files will always know that (1) the character following an escape is a valid escape character, or (2) the character following an escape is not a valid escape character. Neither assumption is correct.But the help says: "If you follow the escape character with any other character, the escape character is removed and the second character is copied directly into the command line.". And that's how it should work.
Microsoft Windows [Version 6.1.7601] Copyright (c) 2009 Microsoft Corporation. All rights reserved. C:\Users\vefatica> echo ^> > C:\Users\vefatica> echo ^^ ^ C:\Users\vefatica> echo ^% % C:\Users\vefatica> echo ^A A C:\Users\vefatica> echo ^a a
First paragraph: Huh?My aversion is because you're trying to lock me into never, ever allowing any new escaped characters. I would rather simply remove all of the special escape character processing; then TCC would be 100% compatible with CMD's (non) escape character processing. Is that a satisfactory solution for you?
What's your obsession with useless syntax? (And I bet you've spent 10**4 more time complaining about something you've never used and never will use than you would, umm, never use it.)