From: Yunzhong Gao Date: Wed, 27 Jan 2016 02:18:28 +0000 (+0000) Subject: Adding a test for PR25717. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e23aee1dd31d61e4c2cfb1081178a9683b3c527e;p=clang Adding a test for PR25717. The test tries to produce a large preprocessed output to the console, and checks that we do not see any unexpected fatal errors. The test is not enabled unless a lit parameter "--param enable_console=1" is passed on the command line to lit.py. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@258902 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/test/Preprocessor/bigoutput.c b/test/Preprocessor/bigoutput.c new file mode 100644 index 0000000000..c5e02cb9dd --- /dev/null +++ b/test/Preprocessor/bigoutput.c @@ -0,0 +1,17 @@ +// RUN: %clang_cc1 -E -x c %s > /dev/tty +// The original bug requires UNIX line endings to trigger. +// The original bug triggers only when outputting directly to console. +// REQUIRES: console + +// Make sure clang does not crash during preprocessing + +#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 + +M14 diff --git a/test/lit.cfg b/test/lit.cfg index c602650666..d73274c03f 100644 --- a/test/lit.cfg +++ b/test/lit.cfg @@ -491,4 +491,9 @@ gmalloc_path_str = lit_config.params.get('gmalloc_path', if use_gmalloc: config.environment.update({'DYLD_INSERT_LIBRARIES' : gmalloc_path_str}) +# Check if we should allow outputs to console. +run_console_tests = int(lit_config.params.get('enable_console', '0')) +if run_console_tests != 0: + config.available_features.add('console') + lit.util.usePlatformSdkOnDarwin(config, lit_config)