The #string directive doesn't expand macros
Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=2440
Reported by Martin Stjernholm mast@roxen.com
This works:
string data = #string "foo.pike";
While this doesn't:
#define FOO "foo.pike"
string data = #string FOO;
I think this is inconvenient and inconsistent, since other preprocessor directives, e.g. #if, does macro expansion on their arguments.
It'd be even more useful if you could use combine_path in the argument to
#string, so that it's possible to include a file in the directory of the
program:
string data = #string combine_path (__FILE__, "../data");