This is the mail archive of the
libstdc++@sourceware.cygnus.com
mailing list for the libstdc++ project.
PATCHES for dec 15 snapshot
- To: Benjamin Kosnik <bkoz at garfield dot cygnus dot com>
- Subject: PATCHES for dec 15 snapshot
- From: Chip Salzenberg <chip at valinux dot com>
- Date: Wed, 8 Dec 1999 12:42:23 -0800
- Cc: libstdc++ at sourceware dot cygnus dot com
- References: <Pine.LNX.4.10.9912062032530.19163-100000@garfield.cygnus.com>
According to Benjamin Kosnik:
> If you've got any lingering patches, please try to get them in this week.
OK, I have two
First, my already-sent patch for CXXFLAGS seems not to have made it
into CVS.
Second, the below patch improves the inline-ability of some inline
functions.
Index: bits/char_traits.h
***************
*** 120,127 ****
}
- static int_type
- not_eof(const int_type& __c)
- { return eq_int_type(__c, eof()) ? int_type(0) : __c; }
-
static char_type
to_char_type(const int_type& __c)
--- 120,123 ----
***************
*** 143,146 ****
--- 139,146 ----
static int_type
eos() { return int_type(); }
+
+ static int_type
+ not_eof(const int_type& __c)
+ { return eq_int_type(__c, eof()) ? int_type(0) : __c; }
};
***************
*** 191,198 ****
{ return static_cast<char*>(memset(__s, __a, __n)); }
- static int_type
- not_eof(const int_type& __c)
- { return (__c == eof()) ? 0 : __c; }
-
static char_type
to_char_type(const int_type& __c)
--- 191,194 ----
***************
*** 217,220 ****
--- 213,220 ----
static int_type
eos() { return '\0'; }
+
+ static int_type
+ not_eof(const int_type& __c)
+ { return (__c == eof()) ? 0 : __c; }
};
***************
*** 285,292 ****
}
- static int_type
- not_eof(const int_type& __c)
- { return eq_int_type(__c, eof()) ? 0 : __c; }
-
static char_type
to_char_type(const int_type& __c) { return char_type(__c); }
--- 285,288 ----
***************
*** 307,310 ****
--- 303,310 ----
static int_type
eos() { return int_type(); }
+
+ static int_type
+ not_eof(const int_type& __c)
+ { return eq_int_type(__c, eof()) ? 0 : __c; }
};
#endif //_GLIBCPP_USE_WCHAR_T
Index: bits/locale_facets.h
***************
*** 1676,1679 ****
--- 1676,1681 ----
enum part { none, space, symbol, sign, value };
struct pattern { char field[4]; };
+
+ static const pattern __default_pattern;
};
***************
*** 1736,1741 ****
do_pos_format() const
{
! static const money_base::pattern __pat = {{symbol, sign, none, value}};
! return __pat;
}
--- 1738,1742 ----
do_pos_format() const
{
! return money_base::__default_pattern;
}
***************
*** 1743,1748 ****
do_neg_format() const
{
! static const money_base::pattern __pat = {{symbol, sign, none, value}};
! return __pat;
}
--- 1744,1748 ----
do_neg_format() const
{
! return money_base::__default_pattern;
}
Index: src/locale-inst.cc
***************
*** 51,54 ****
--- 51,58 ----
// moneypunct, money_get, and money_put
+
+ const money_base::pattern
+ money_base::__default_pattern = {{symbol, sign, none, value}};
+
template class moneypunct<char, false>;
template class moneypunct<char, true>;
--
Chip Salzenberg - a.k.a. - <chip@valinux.com>
"Fleagal. Bingo. Drooper. Snork. They're cops." //MST3K