1 // { dg-do compile }
2 
3 // Mangling of classes from std::decimal are special-cased.
4 
5 namespace std {
6   namespace decimal {
7     class decimal64 {
8       public:
9 	typedef float __decfloat64 __attribute__ ((mode (DD)));
decimal64(int __r)10 	explicit decimal64 (int __r):__val (__r) {}
11       private:
12 	__decfloat64 __val;
13     };
14   }
15 }
16 
bar(const std::decimal::decimal64 & x)17 int bar (const std::decimal::decimal64 & x) { return 0; }
18 
foo()19 int foo ()
20 {
21   std::decimal::decimal64 x(0);
22   return bar (x);
23 }
24 
25 // { dg-final { scan-assembler "_Z3barRKDd:" } }
26