From b2a07a379418f51fb90c7c7cc98b14f641feacc2 Mon Sep 17 00:00:00 2001 From: John McCall Date: Thu, 30 Jan 2014 01:12:47 +0000 Subject: [PATCH] Actually test that the local static variable from my test in r200380 gets linkonce_odr linkage. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@200437 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/SemaCXX/linkage.cpp | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/test/SemaCXX/linkage.cpp b/test/SemaCXX/linkage.cpp index 46bd3b2441..8a2013fd52 100644 --- a/test/SemaCXX/linkage.cpp +++ b/test/SemaCXX/linkage.cpp @@ -5,6 +5,8 @@ // RUN: %clang_cc1 -Werror -triple x86_64-apple-darwin10 -emit-llvm %s -o - | FileCheck %s +// CHECK: @_ZZN5test61A3fooEvE3bar = linkonce_odr global i32 0, align 4 + // PR8926 namespace test0 { typedef struct { @@ -108,8 +110,15 @@ namespace test5 { // processing a record decl. rdar://15928125 namespace test6 { typedef struct { - void foo() { - static int bar = 0; + int foo() { + // Tested at top of file. + static int bar = 0; + return bar++; } } A; + + void test() { + A a; + a.foo(); + } } -- 2.49.0