Imported Upstream version 4.8.1
[platform/upstream/gcc48.git] / libstdc++-v3 / testsuite / 26_numerics / headers / valarray / synopsis.cc
1 // { dg-do compile }
2
3 // Copyright (C) 2007-2013 Free Software Foundation, Inc.
4 //
5 // This file is part of the GNU ISO C++ Library.  This library is free
6 // software; you can redistribute it and/or modify it under the
7 // terms of the GNU General Public License as published by the
8 // Free Software Foundation; either version 3, or (at your option)
9 // any later version.
10
11 // This library is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 // GNU General Public License for more details.
15
16 // You should have received a copy of the GNU General Public License along
17 // with this library; see the file COPYING3.  If not see
18 // <http://www.gnu.org/licenses/>.
19
20 #include <valarray>
21
22 namespace std {
23   template<class T> class valarray;
24
25   class slice;
26   template<class T> class slice_array;
27
28   class gslice;
29   template<class T> class gslice_array;
30   template<class T> class mask_array;
31   template<class T> class indirect_array;
32   template<class T> valarray<T> operator*
33     (const valarray<T>&, const valarray<T>&);
34   template<class T> valarray<T> operator* (const valarray<T>&, const T&);
35   template<class T> valarray<T> operator* (const T&, const valarray<T>&);
36
37 template<class T> valarray<T> operator/
38   (const valarray<T>&, const valarray<T>&);
39 template<class T> valarray<T> operator/ (const valarray<T>&, const T&);
40 template<class T> valarray<T> operator/ (const T&, const valarray<T>&);
41 template<class T> valarray<T> operator%
42   (const valarray<T>&, const valarray<T>&);
43 template<class T> valarray<T> operator% (const valarray<T>&, const T&);
44 template<class T> valarray<T> operator% (const T&, const valarray<T>&);
45 template<class T> valarray<T> operator+
46   (const valarray<T>&, const valarray<T>&);
47 template<class T> valarray<T> operator+ (const valarray<T>&, const T&);
48 template<class T> valarray<T> operator+ (const T&, const valarray<T>&);
49 template<class T> valarray<T> operator-
50   (const valarray<T>&, const valarray<T>&);
51 template<class T> valarray<T> operator- (const valarray<T>&, const T&);
52 template<class T> valarray<T> operator- (const T&, const valarray<T>&);
53 template<class T> valarray<T> operator^
54   (const valarray<T>&, const valarray<T>&);
55 template<class T> valarray<T> operator^ (const valarray<T>&, const T&);
56 template<class T> valarray<T> operator^ (const T&, const valarray<T>&);
57 template<class T> valarray<T> operator&
58   (const valarray<T>&, const valarray<T>&);
59 template<class T> valarray<T> operator& (const valarray<T>&, const T&);
60 template<class T> valarray<T> operator& (const T&, const valarray<T>&);
61 template<class T> valarray<T> operator|
62   (const valarray<T>&, const valarray<T>&);
63 template<class T> valarray<T> operator| (const valarray<T>&, const T&);
64 template<class T> valarray<T> operator| (const T&, const valarray<T>&);
65 template<class T> valarray<T> operator<<
66   (const valarray<T>&, const valarray<T>&);
67 template<class T> valarray<T> operator<<(const valarray<T>&, const T&);
68 template<class T> valarray<T> operator<<(const T&, const valarray<T>&);
69 template<class T> valarray<T> operator>>
70   (const valarray<T>&, const valarray<T>&);
71 template<class T> valarray<T> operator>>(const valarray<T>&, const T&);
72 template<class T> valarray<T> operator>>(const T&, const valarray<T>&);
73 template<class T> valarray<bool> operator&&
74   (const valarray<T>&, const valarray<T>&);
75 template<class T> valarray<bool> operator&&(const valarray<T>&, const T&);
76 template<class T> valarray<bool> operator&&(const T&, const valarray<T>&);
77 template<class T> valarray<bool> operator||
78   (const valarray<T>&, const valarray<T>&);
79 template<class T> valarray<bool> operator||(const valarray<T>&, const T&);
80 template<class T> valarray<bool> operator||(const T&, const valarray<T>&);
81
82   template<class T>
83     valarray<bool> operator==(const valarray<T>&, const valarray<T>&);
84   template<class T> valarray<bool> operator==(const valarray<T>&, const T&);
85   template<class T> valarray<bool> operator==(const T&, const valarray<T>&);
86   template<class T>
87     valarray<bool> operator!=(const valarray<T>&, const valarray<T>&);
88   template<class T> valarray<bool> operator!=(const valarray<T>&, const T&);
89   template<class T> valarray<bool> operator!=(const T&, const valarray<T>&);
90   template<class T>
91     valarray<bool> operator< (const valarray<T>&, const valarray<T>&);
92   template<class T> valarray<bool> operator< (const valarray<T>&, const T&);
93   template<class T> valarray<bool> operator< (const T&, const valarray<T>&);
94   template<class T>
95     valarray<bool> operator> (const valarray<T>&, const valarray<T>&);
96   template<class T> valarray<bool> operator> (const valarray<T>&, const T&);
97   template<class T> valarray<bool> operator> (const T&, const valarray<T>&);
98   template<class T>
99     valarray<bool> operator<=(const valarray<T>&, const valarray<T>&);
100   template<class T> valarray<bool> operator<=(const valarray<T>&, const T&);
101   template<class T> valarray<bool> operator<=(const T&, const valarray<T>&);
102   template<class T>
103     valarray<bool> operator>=(const valarray<T>&, const valarray<T>&);
104   template<class T> valarray<bool> operator>=(const valarray<T>&, const T&);
105   template<class T> valarray<bool> operator>=(const T&, const valarray<T>&);
106   template<class T> valarray<T> abs  (const valarray<T>&);
107   template<class T> valarray<T> acos (const valarray<T>&);
108   template<class T> valarray<T> asin (const valarray<T>&);
109   template<class T> valarray<T> atan (const valarray<T>&);
110   template<class T> valarray<T> atan2
111     (const valarray<T>&, const valarray<T>&);
112   template<class T> valarray<T> atan2(const valarray<T>&, const T&);
113   template<class T> valarray<T> atan2(const T&, const valarray<T>&);
114   template<class T> valarray<T> cos (const  valarray<T>&);
115   template<class T> valarray<T> cosh (const valarray<T>&);
116   template<class T> valarray<T> exp (const  valarray<T>&);
117   template<class T> valarray<T> log (const  valarray<T>&);
118   template<class T> valarray<T> log10(const valarray<T>&);
119   template<class T> valarray<T> pow(const valarray<T>&, const valarray<T>&);
120   template<class T> valarray<T> pow(const valarray<T>&, const T&);
121   template<class T> valarray<T> pow(const T&, const valarray<T>&);
122   template<class T> valarray<T> sin  (const valarray<T>&);
123   template<class T> valarray<T> sinh (const valarray<T>&);
124   template<class T> valarray<T> sqrt (const valarray<T>&);
125   template<class T> valarray<T> tan  (const valarray<T>&);
126   template<class T> valarray<T> tanh (const valarray<T>&);
127 }