These 3 new tests are modeled after 3 existing tests but made slightly
more complex since now instead of definining a new macro to be an
existing macro, we define it to be replaced with two tokens, (one a
literal, and one an existing macro).
These tests all fail currently because the replacement lookup is
currently happening on the basis of the entire replacement string
rather than on a list of tokens.
--- /dev/null
+#define foo 1
+#define bar a foo
+bar
--- /dev/null
+#define bar a foo
+#define foo 1
+bar
--- /dev/null
+#define foo a bar
+#define bar b baz
+#define baz c foo
+foo
+bar
+baz