This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

[V3 PATCH] Fix for defect report libstdc++/1893


I'm not sure why this works under a normal build (where default inlining
is allowed), but when you use -fno-default-inline the error in the code
is uncovered.  The iostate references must be qualified because they
are separated from their definition in the base class by another template
class.


2001-02-13  Greg Bumgardner <bumgard@roguewave.com>

	* libstdc++-v3/include/bits/istream.tcc: Qualified iostate with
	ios_base:: as fix for libstc++/1893 

Index: gcc/libstdc++-v3/include/bits/istream.tcc
diff -c gcc/libstdc++-v3/include/bits/istream.tcc:1.1.1.1 gcc/libstdc++-v3/include/bits/istream.tcc:1.1.1.1.12.1
*** gcc/libstdc++-v3/include/bits/istream.tcc:1.1.1.1	Tue Feb 13 00:20:16 2001
--- gcc/libstdc++-v3/include/bits/istream.tcc	Tue Feb 13 10:42:39 2001
***************
*** 151,157 ****
        if (__cerb) 
  	{
  	  try {
! 	    iostate __err = iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
--- 151,157 ----
        if (__cerb) 
  	{
  	  try {
! 	    ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
***************
*** 175,181 ****
        if (__cerb) 
  	{
  	  try {
! 	    iostate __err = iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
--- 175,181 ----
        if (__cerb) 
  	{
  	  try {
! 	    ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
***************
*** 199,205 ****
        if (__cerb) 
  	{
  	  try {
! 	    iostate __err = iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
--- 199,205 ----
        if (__cerb) 
  	{
  	  try {
! 	    ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
***************
*** 223,229 ****
        if (__cerb) 
  	{
  	  try {
! 	    iostate __err = iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
--- 223,229 ----
        if (__cerb) 
  	{
  	  try {
! 	    ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
***************
*** 247,253 ****
        if (__cerb) 
  	{
  	  try {
! 	    iostate __err = iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
--- 247,253 ----
        if (__cerb) 
  	{
  	  try {
! 	    ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
***************
*** 271,277 ****
        if (__cerb) 
  	{
  	  try {
! 	    iostate __err = iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
--- 271,277 ----
        if (__cerb) 
  	{
  	  try {
! 	    ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
***************
*** 295,301 ****
        if (__cerb) 
  	{
  	  try {
! 	    iostate __err = iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
--- 295,301 ----
        if (__cerb) 
  	{
  	  try {
! 	    ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
***************
*** 320,326 ****
        if (__cerb) 
  	{
  	  try {
! 	    iostate __err = iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
--- 320,326 ----
        if (__cerb) 
  	{
  	  try {
! 	    ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
***************
*** 344,350 ****
        if (__cerb) 
  	{
  	  try {
! 	    iostate __err = iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
--- 344,350 ----
        if (__cerb) 
  	{
  	  try {
! 	    ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
***************
*** 369,375 ****
        if (__cerb) 
  	{
  	  try {
! 	    iostate __err = iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
--- 369,375 ----
        if (__cerb) 
  	{
  	  try {
! 	    ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
***************
*** 393,399 ****
        if (__cerb) 
  	{
  	  try {
! 	    iostate __err = iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
--- 393,399 ----
        if (__cerb) 
  	{
  	  try {
! 	    ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
***************
*** 417,423 ****
        if (__cerb) 
  	{
  	  try {
! 	    iostate __err = iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
--- 417,423 ----
        if (__cerb) 
  	{
  	  try {
! 	    ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
***************
*** 441,447 ****
        if (__cerb) 
  	{
  	  try {
! 	    iostate __err = iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }
--- 441,447 ----
        if (__cerb) 
  	{
  	  try {
! 	    ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
  	    _M_fnumget->get(*this, 0, *this, __err, __n);
  	    this->setstate(__err);
  	  }


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]