Merged revision 156805 into branch.
[official-gcc.git] / gcc / testsuite / g++.dg / compat / decimal / decimal-dummy.h
blobec347f9b7ebd617297e4e64deb41f7b3f6caef8d
1 namespace std {
2 namespace decimal {
4 class decimal32
6 public:
7 typedef float __dec32 __attribute__((mode(SD)));
8 decimal32 () : __val(0.e-101DF) {}
9 decimal32 (__dec32 x) : __val(x) {}
10 __dec32 __val;
13 class decimal64
15 public:
16 typedef float __dec64 __attribute__((mode(DD)));
17 decimal64 () : __val(0.e-398dd) {}
18 decimal64 (__dec64 x) : __val(x) {}
19 __dec64 __val;
22 class decimal128
24 public:
25 typedef float __dec128 __attribute__((mode(TD)));
26 decimal128 () : __val(0.e-6176DL) {}
27 decimal128 (__dec128 x) : __val(x) {}
28 __dec128 __val;
31 inline decimal32 operator+ (decimal32 lhs, decimal32 rhs)
33 decimal32 tmp;
34 tmp.__val = lhs.__val + rhs.__val;
35 return tmp;
38 inline decimal64 operator+ (decimal64 lhs, decimal64 rhs)
40 decimal64 tmp;
41 tmp.__val = lhs.__val + rhs.__val;
42 return tmp;
45 inline decimal128 operator+ (decimal128 lhs, decimal128 rhs)
47 decimal128 tmp;
48 tmp.__val = lhs.__val + rhs.__val;
49 return tmp;
52 inline bool operator!= (decimal32 lhs, decimal32 rhs)
54 return lhs.__val != rhs.__val;
57 inline bool operator!= (decimal64 lhs, decimal64 rhs)
59 return lhs.__val != rhs.__val;
62 inline bool operator!= (decimal128 lhs, decimal128 rhs)
64 return lhs.__val != rhs.__val;