|
|
|||||||||||||||||||||||||||||
![]() |
![]() |
||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||
![]() |
|||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||
|
|
|
|
|||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||
|
|
|
|
|||||||||||||||||||||||||||
|
8.1.1 Active Characters
To fully understand where proper quotation is important, you first need
to know what are the special characters in Autoconf: `#' introduces
a comment inside which no macro expansion is performed, `,'
separates arguments, `[' and `]' are the quotes themselves,
and finally `(' and `)' (which In order to understand the delicate case of macro calls, we first have to present some obvious failures. Below they are "obvious-ified", although you find them in real life, they are usually in disguise. Comments, introduced by a hash and running up to the newline, are opaque tokens to the top level: active characters are turned off, and there is no macro expansion:
Each time there can be a macro expansion, there is a quotation expansion; i.e., one level of quotes is stripped:
Without this in mind, the reader will try hopelessly to use her macro
How can you correctly output the intended results(2)?
|
|
|||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||
|
Marketplace: | |||||||||||||||||||||||||||||
| " Come to think of it, there are already a million monkeys on a million typewriters, and Usenet is nothing like Shakespeare. " | |||||||||||||||||||||||||||||