[6457] in Athena Bugs
Saber msg: v3.0 beta-2 (8/21/90 boom decstation Ultrix 3.x 0 0)
daemon@ATHENA.MIT.EDU (daemon@ATHENA.MIT.EDU)
Mon Nov 26 03:06:33 1990
From: jik@ATHENA.MIT.EDU
Date: Mon, 26 Nov 90 03:06:19 EST
To: bugs@ATHENA.MIT.EDU
Saber3 on the decmips doesn't deal properly with backslashed quotation marks
in Makefiles. This worked in previous versions of saber. In particular, I
have a Makefile which reads as follows:
STRING=\"string\"
foo: foo.c
cc -DSTRING=$(STRING) -o foo foo.c
saber_foo: foo.c
#load -DSTRING=$(STRING) foo.c
And foo.c which reads as follows:
#include <stdio.h>
main()
{
printf("%s\n", STRING);
}
When I build it and run it from the shell, it works:
boom% make foo
cc -DSTRING=\"string\" -o foo foo.c
boom% ./foo
string
When I try to load it into saber, however, I get:
1 -> make saber_foo
load -DSTRING="string" foo.c
Loading: -DSTRING=string foo.c
----------------
"foo.c":5, main(), Undefined name (Error #570)
4: {
* 5: printf("%s\n", STRING);
6: }
'string' is undefined.
The quotation marks around the string are getting lost too early. An older
version of saber does this:
1 -> make saber_foo
load -DSTRING="string" foo.c
Loading: -DSTRING="string" foo.c
2 ->
Note how it doesn't lose the quotation marks.
jik