don't use gcc_s on avr32 - fixes uclibc++ compile
[openwrt/svn-archive/archive.git] / libs / uclibc++ / patches / 007-numeric_limits.patch
1 Index: uClibc++-0.2.2/include/limits
2 ===================================================================
3 --- uClibc++-0.2.2/include/limits (revision 1877)
4 +++ uClibc++-0.2.2/include/limits (revision 1878)
5 @@ -143,6 +143,53 @@
6 static T signaling_NaN();
7 };
8
9 +template <> class numeric_limits<bool> {
10 +public:
11 + typedef bool T;
12 + // General -- meaningful for all specializations.
13 + static const bool is_specialized = true;
14 + static T min(){
15 + return false;
16 + }
17 + static T max(){
18 + return true;
19 + }
20 + static const int radix = 2;
21 + static const int digits = 1;
22 + static const int digits10 = 0;
23 + static const bool is_signed = false;
24 + static const bool is_integer = true;
25 + static const bool is_exact = true;
26 + static const bool traps = false;
27 + static const bool is_modulo = false;
28 + static const bool is_bounded = true;
29 +
30 + // Floating point specific.
31 +
32 + static T epsilon(){
33 + return 0;
34 + }
35 + static T round_error(){
36 + return 0;
37 + }
38 + static const int min_exponent10 = 0;
39 + static const int max_exponent10 = 0;
40 + static const int min_exponent = 0;
41 +
42 + static const int max_exponent = 0;
43 + static const bool has_infinity = false;
44 + static const bool has_quiet_NaN = false;
45 + static const bool has_signaling_NaN = false;
46 + static const bool is_iec559 = false;
47 + static const bool has_denorm = false;
48 + static const bool tinyness_before = false;
49 + static const float_round_style round_style = round_indeterminate;
50 + static T denorm_min();
51 + static T infinity();
52 + static T quiet_NaN();
53 + static T signaling_NaN();
54 +};
55 +
56 template <> class numeric_limits<unsigned char> {
57 public:
58 typedef unsigned char T;
59 @@ -567,6 +614,7 @@
60 };
61
62 template <> class numeric_limits<double> {
63 +public:
64 typedef double numeric_type;
65
66 static const bool is_specialized = true;