Index: test/Preprocessor/bigoutput.c =================================================================== --- test/Preprocessor/bigoutput.c +++ 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 Index: test/lit.cfg =================================================================== --- test/lit.cfg +++ test/lit.cfg @@ -491,4 +491,9 @@ 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)