PP: Fix #1694: Handle badly formed argument substitution.

Also added a warning for no space after a macro name.
diff --git a/Test/baseResults/cppBad3.vert.out b/Test/baseResults/cppBad3.vert.out
new file mode 100755
index 0000000..46f94da
--- /dev/null
+++ b/Test/baseResults/cppBad3.vert.out
@@ -0,0 +1,18 @@
+cppBad3.vert
+ERROR: 0:3: 'macro expansion' : End of input in macro y
+ERROR: 1 compilation errors.  No code generated.
+
+
+Shader version: 100
+ERROR: node is still EOpNull!
+0:?   Linker Objects
+
+
+Linked vertex stage:
+
+ERROR: Linking vertex stage: Missing entry point: Each stage requires one entry point
+
+Shader version: 100
+ERROR: node is still EOpNull!
+0:?   Linker Objects
+