OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [tags/] [gnu-src/] [gcc-4.5.1/] [gcc-4.5.1-or32-1.0rc1/] [gcc/] [testsuite/] [g++.dg/] [abi/] [mangle37.C] - Blame information for rev 338

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 301 jeremybenn
// Testcase for mangling of expressions involving operator names.
2
// { dg-options -std=c++0x }
3
// { dg-final { scan-assembler "_Z1fI1AEDTclonplfp_fp_EET_" } }
4
// { dg-final { scan-assembler "_Z1gI1AEDTclonplIT_Efp_fp_EES1_" } }
5
// { dg-final { scan-assembler "_Z1hI1AEDTcldtfp_miEET_" } }
6
// { dg-final { scan-assembler "_Z1iI1AEDTcldtfp_srT_miEES1_" } }
7
// { dg-final { scan-assembler "_Z1jI1AEDTcldtfp_cvPT_EES1_" } }
8
 
9
struct A {
10
  void operator-();
11
  template 
12
  operator T();
13
};
14
template 
15
T operator+(T,T);
16
 
17
template 
18
auto f (T t) -> decltype(operator+(t,t));
19
template 
20
auto g (T t) -> decltype(operator+(t,t));
21
template 
22
auto h (T t) -> decltype(t.operator-());
23
template 
24
auto i (T t) -> decltype(t.T::operator-());
25
template 
26
auto j (T t) -> decltype(t.operator T*());
27
 
28
int main()
29
{
30
  f(A());
31
  g(A());
32
  h(A());
33
  i(A());
34
  j(A());
35
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.