diff options
Diffstat (limited to 'test/DebugInfo/Inputs/arange-overlap.cc')
-rw-r--r-- | test/DebugInfo/Inputs/arange-overlap.cc | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/test/DebugInfo/Inputs/arange-overlap.cc b/test/DebugInfo/Inputs/arange-overlap.cc new file mode 100644 index 0000000..82e3f12 --- /dev/null +++ b/test/DebugInfo/Inputs/arange-overlap.cc @@ -0,0 +1,26 @@ +void call(); + +struct S { + static void foo() { call(); call(); } + static void bar() { call(); call(); } + static void baz() {} +}; + +#ifdef FILE1 +# define FUNC_NAME func1 +# define FUNC_BODY \ + S::foo(); S::bar(); S::baz(); +#else +# define FUNC_NAME func2 +# define FUNC_BODY \ + S::bar(); +#endif + +void FUNC_NAME() { + FUNC_BODY +} + +// Build instructions: +// $ clang -g -fPIC -c -DFILE1 arange-overlap.cc -o obj1.o +// $ clang -g -fPIC -c arange-overlap.cc -o obj2.o +// $ clang -shared obj1.o obj2.o -o <output> |