brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.0 KiB · bbff927 Raw
45 lines · cpp
1// RUN: %clang_cc1 -fsyntax-only -verify %s -include %s -std=gnu++982// RUN: %clang_cc1 -fsyntax-only -verify %s -include %s -std=c++113// RUN: %clang_cc1 -fsyntax-only -verify %s -include %s -std=c++14 -DCXX14=14 5// expected-no-diagnostics6 7#ifndef HEADER8#define HEADER9 10_Complex int val1 = 2i;11_Complex long val2 = 2il;12_Complex long long val3 = 2ill;13_Complex float val4 = 2.0if;14_Complex double val5 = 2.0i;15_Complex long double val6 = 2.0il;16 17#if CXX1418 19#pragma clang system_header20 21namespace std {22  template<typename T> struct complex {};23  complex<float> operator""if(unsigned long long);24  complex<float> operator""if(long double);25 26  complex<double> operator"" i(unsigned long long);27  complex<double> operator"" i(long double);28 29  complex<long double> operator"" il(unsigned long long);30  complex<long double> operator"" il(long double);31}32 33using namespace std;34 35complex<float> f1 = 2.0if;36complex<float> f2 = 2if;37complex<double> d1 = 2.0i;38complex<double> d2 = 2i;39complex<long double> l1 = 2.0il;40complex<long double> l2 = 2il;41 42#endif43 44#endif45