undefine
を使えばマクロの定義を削除することができます。
undefine(name)
これによってマクロnameが削除されます。 展開されてしまうのを防ぐためにマクロの名前は必ずクォートしなくてはなりません。
undefine
は展開されると消滅します。
foo ⇒foo define(`foo', `expansion text') ⇒ foo ⇒expansion text undefine(`foo') ⇒ foo ⇒foo
nameがマクロとして定義されていなくても問題はありません。
その場合、undefine
は何もしません。
undefine
は引数を与えたときだけ認識されます。