blob: 789ea71522850831b791f51c1f799f0a0acb86db [file] [log] [blame]
Hans Wennborg442e4f72013-12-13 22:43:52 +00001// RUN: %clang_cc1 -cxx-abi itanium -emit-llvm -o - %s | FileCheck %s
Eli Friedman8a5f75e2009-11-26 02:52:12 +00002
3const int x = 10;
4const int y = 20;
Richard Smithdc0ef452012-10-19 06:37:48 +00005const volatile int z = 30;
Eli Friedman8a5f75e2009-11-26 02:52:12 +00006// CHECK-NOT: @x
Richard Smithdc0ef452012-10-19 06:37:48 +00007// CHECK: @z = constant i32 30
Alexis Huntaecc45c2010-01-24 03:04:27 +00008// CHECK: @_ZL1y = internal constant i32 20
Eli Friedman8a5f75e2009-11-26 02:52:12 +00009const int& b() { return y; }
10
Eli Friedmanf873c2f2009-11-26 03:04:01 +000011const char z1[] = "asdf";
12const char z2[] = "zxcv";
Richard Smithdc0ef452012-10-19 06:37:48 +000013const volatile char z3[] = "zxcv";
Eli Friedmanf873c2f2009-11-26 03:04:01 +000014// CHECK-NOT: @z1
Richard Smithdc0ef452012-10-19 06:37:48 +000015// CHECK: @z3 = constant
Alexis Huntaecc45c2010-01-24 03:04:27 +000016// CHECK: @_ZL2z2 = internal constant
Eli Friedmanf873c2f2009-11-26 03:04:01 +000017const char* b2() { return z2; }