1ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao// RUN: %clang_cc1 -emit-llvm -o %t %s
2ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao// RUN: grep "hello" %t | count 3
3ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao// RUN: grep 'c"hello\\00"' %t | count 2
4ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao// RUN: grep 'c"hello\\00\\00\\00"' %t | count 1
5ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao// RUN: grep 'c"ola"' %t | count 1
6ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
7ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao/* Should be 3 hello string, two global (of different sizes), the rest
8ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao   are shared. */
9ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
10ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaovoid f0() {
11ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  bar("hello");
12ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao}
13ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
14ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaovoid f1() {
15ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  static char *x = "hello";
16ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  bar(x);
17ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao}
18ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
19ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaovoid f2() {
20ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  static char x[] = "hello";
21ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  bar(x);
22ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao}
23ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
24ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaovoid f3() {
25ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  static char x[8] = "hello";
26ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  bar(x);
27ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao}
28ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
29ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaovoid f4() {
30ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  static struct s {
31ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao    char *name;
32ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  } x = { "hello" };
33ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao  gaz(&x);
34ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao}
35ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao
36ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaochar x[3] = "ola";
37