[PATCH] D15705: Adding a scripted test for PR25717
Rafael Espíndola via cfe-commits
cfe-commits at lists.llvm.org
Wed Dec 23 14:14:29 PST 2015
Are you sure the line ending in a problem? The preprocessor output has
16 lines, but the last one is very long.
In any case, it looks like at least on linux clang produces an output
with '\n' even when the input has CRLF:
$ file test.c
test.c: ASCII text, with CRLF line terminators
$ clang -E test.c > test.i
$ file test.i
test.i: C source, ASCII text, with very long lines
On 23 December 2015 at 15:22, Yunzhong Gao
<Yunzhong_Gao at playstation.sony.com> wrote:
> ygao updated this revision to Diff 43554.
> ygao added a comment.
> I think what I can do is to run
> svn propset svn:eol-style 'LF'
> on the new file, and hopefully the subversion or git client will get the hint and not auto-translate the line endings.
> Index: test/Preprocessor/macro.c
> --- test/Preprocessor/macro.c
> +++ test/Preprocessor/macro.c
> @@ -0,0 +1,16 @@
> +// RUN: %clang_cc1 -E -x c %s | FileCheck %s
> +// The original bug requires UNIX line endings to trigger.
> +// Make sure clang does not crash during preprocessing
> +// CHECK-NOT: fatal error
> +#define M0 extern int x;
> +#define M2 M0 M0 M0 M0
> +#define M4 M2 M2 M2 M2
> +#define M6 M4 M4 M4 M4
> +#define M8 M6 M6 M6 M6
> +#define M10 M8 M8 M8 M8
> +#define M12 M10 M10 M10 M10
> +#define M14 M12 M12 M12 M12
More information about the cfe-commits