mangle.cpp revision c6c91bc019ff7fa09f6570025ba011aad4c0d004
1d7d5f0223bd30dfd618762349c6209dd1d5ea3e6Daniel Dunbar// RUN: clang-cc -emit-llvm %s -o %t &&
25f2bfd4811996abb783aa6c7254c56baa6930e8cDouglas Gregor
35f2bfd4811996abb783aa6c7254c56baa6930e8cDouglas Gregor// FIXME: This test is intentionally trivial, because we can't yet
45f2bfd4811996abb783aa6c7254c56baa6930e8cDouglas Gregor// CodeGen anything real in C++.
55f2bfd4811996abb783aa6c7254c56baa6930e8cDouglas Gregorstruct X { };
65f2bfd4811996abb783aa6c7254c56baa6930e8cDouglas Gregorstruct Y { };
7b1d947b1011cb559be5745153f292b2dfb46b8e6Anders Carlsson
8b1d947b1011cb559be5745153f292b2dfb46b8e6Anders Carlsson// RUN: grep _ZplRK1YRA100_P1X %t | count 1 &&
95f2bfd4811996abb783aa6c7254c56baa6930e8cDouglas Gregorbool operator+(const Y&, X* (&xs)[100]) { return false; }
105f2bfd4811996abb783aa6c7254c56baa6930e8cDouglas Gregor
11b1d947b1011cb559be5745153f292b2dfb46b8e6Anders Carlsson// RUN: grep _Z1f1s %t | count 1 &&
12b1d947b1011cb559be5745153f292b2dfb46b8e6Anders Carlssontypedef struct { int a; } s;
13b1d947b1011cb559be5745153f292b2dfb46b8e6Anders Carlssonvoid f(s) { }
14b1d947b1011cb559be5745153f292b2dfb46b8e6Anders Carlsson
15b1d947b1011cb559be5745153f292b2dfb46b8e6Anders Carlsson// RUN: grep _Z1f1e %t| count 1 &&
16b1d947b1011cb559be5745153f292b2dfb46b8e6Anders Carlssontypedef enum { foo } e;
17b1d947b1011cb559be5745153f292b2dfb46b8e6Anders Carlssonvoid f(e) { }
18b1d947b1011cb559be5745153f292b2dfb46b8e6Anders Carlsson
194843e584b54460973b8445d38907bab0401ebb0cAnders Carlsson// RUN: grep _Z1f1u %t | count 1 &&
20b1d947b1011cb559be5745153f292b2dfb46b8e6Anders Carlssontypedef union { int a; } u;
21b1d947b1011cb559be5745153f292b2dfb46b8e6Anders Carlssonvoid f(u) { }
224843e584b54460973b8445d38907bab0401ebb0cAnders Carlsson
234843e584b54460973b8445d38907bab0401ebb0cAnders Carlsson// RUN: grep _Z1f1x %t | count 1
244843e584b54460973b8445d38907bab0401ebb0cAnders Carlssontypedef struct { int a; } x,y;
254843e584b54460973b8445d38907bab0401ebb0cAnders Carlssonvoid f(y) { }
264843e584b54460973b8445d38907bab0401ebb0cAnders Carlsson
27c6c91bc019ff7fa09f6570025ba011aad4c0d004Anders Carlsson// RUN: grep _Z1fv %t | count 1
28c6c91bc019ff7fa09f6570025ba011aad4c0d004Anders Carlssonvoid f() { }
29