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