Closed phadej closed 4 years ago
If this is by design, it should be documented:
% cat foo.h #define M(x) x##bar M(foo) M(quux)
% cpp foo.h # 1 "foo.h" # 1 "<built-in>" # 1 "<command-line>" # 31 "<command-line>" # 1 "/usr/include/stdc-predef.h" 1 3 4 # 32 "<command-line>" 2 # 1 "foo.h" foobar quuxbar
% cpphs foo.h #line 1 "foo.h" foo##bar quux##bar
$ cpphs --hashes foo.h
foobar quuxbar
I'd argue it should be on by default, and one could turn it off. But I see how it could clash with some operator named ## in haskell somewhere
##
If this is by design, it should be documented: