Previous: Quoting Arguments, Up: Macros
マクロの呼び出しが引数を伴うときはその収集が行われたあと、 マクロは展開されます。 そして展開後のテキストは入力に(クォートされずに)戻され、 そして再び読み込まれます(再走査)。 したがって、マクロを1つ呼び出したことで得られたテキストの中に、 完全なマクロの呼び出しやその一部が含まれている場合、 そこから更に多くのマクロが呼ばれることもあるわけです。
非常に簡単な例を挙げると、fooが‘bar’へ展開され、 barが‘Hello world’へ展開されるとすると、入力
foo
は最初に‘bar’へ展開された後、再び走査が行われ ‘Hello world’へ展開されます。