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


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

bitset and CHAR_BIT



I am wondering, why the example of SGI's STL Manual for bitset is not 
compiling with gcc-2.95.1. I get on Linux and Solaris the same error messages.

I included <limits.h> as suggested by http://egcs.cygnus.com/ml/gcc-bugs/1999-0
5/msg00761.html

Does anybody know, what happened?

Thanks.

--Rainer.

#include <iostream>
#include <bitset>
using namespace std;

int main() {
  const bitset<12> mask(2730ul); 
  cout << "mask =      " << mask << endl;
  
  bitset<12> x;
  
  cout << "Enter a 12-bit bitset in binary: " << flush;
  if (cin >> x) {
    cout << "x =        " << x << endl;
    cout << "As ulong:  " << x.to_ulong() << endl;
    cout << "And with mask: " << (x & mask) << endl;
    cout << "Or with mask:  " << (x | mask) << endl;
  }
  exit(0);
}

g++ test.cc
/usr/local/gcc-2.95.1-binutils/lib/gcc-lib/sparc-sun-solaris2.6/2.95.1/../../..
/../include/g++-3/bitset: In function `class istream & operator >><12, long 
unsigned int>(istream &, bitset<12,long unsigned int> &)':
test.cc:14:   instantiated from here
/usr/local/gcc-2.95.1-binutils/lib/gcc-lib/sparc-sun-solaris2.6/2.95.1/../../..
/../include/g++-3/bitset:915: no matching function for call to 
`basic_string<char,string_char_traits<char>,__default_alloc_template<false,0> >
::push_back (char &)'
/usr/local/gcc-2.95.1-binutils/lib/gcc-lib/sparc-sun-solaris2.6/2.95.1/../../..
/../include/g++-3/bitset: In method `void bitset<12,long unsigned int>
::_M_copy_from_string<char, string_char_traits<char>, 
__default_alloc_template<false,0> >(const basic_string<char,string_char_traits<
char>,__default_alloc_template<false,0> > &, unsigned int, unsigned int)':
/usr/local/gcc-2.95.1-binutils/lib/gcc-lib/sparc-sun-solaris2.6/2.95.1/../../..
/../include/g++-3/bitset:921:   instantiated from `operator >><12, long 
unsigned int>(istream &, bitset<12,long unsigned int> &)'
test.cc:14:   instantiated from here
/usr/local/gcc-2.95.1-binutils/lib/gcc-lib/sparc-sun-solaris2.6/2.95.1/../../..
/../include/g++-3/bitset:829: `min' undeclared (first use this function)
/usr/local/gcc-2.95.1-binutils/lib/gcc-lib/sparc-sun-solaris2.6/2.95.1/../../..
/../include/g++-3/bitset:829: (Each undeclared identifier is reported only once
/usr/local/gcc-2.95.1-binutils/lib/gcc-lib/sparc-sun-solaris2.6/2.95.1/../../..
/../include/g++-3/bitset:829: for each function it appears in.)

Note, it works with the current STL library of SGI.

--Rainer.


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