summaryrefslogtreecommitdiff
path: root/test/CodeGen/linkage-redecl.c
blob: 4767a94a45f6a91afe3f1715fa4a9852ccc8772e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// RUN: %clang_cc1 -emit-llvm %s -o - | FileCheck %s

// CHECK: @test2_i = internal global i32 99
static int test2_i = 99;
int test2_f() {
  extern int test2_i;
  return test2_i;
}

// C99 6.2.2p3
// PR3425
static void f(int x);

void g0() {
  f(5);
}

extern void f(int x) { } // still has internal linkage
// CHECK-LABEL: define internal {{.*}}void @f