Boost logo

Boost :

From: Joel Young (jdy_at_[hidden])
Date: 2001-03-21 12:59:00

From: Daryle Walker <darylew_at_[hidden]>
> on 3/21/01 3:50 AM, boost_at_[hidden] at boost_at_[hidden] wrote:
> > Description : Version 8; CRC checksum computation
> anyone who had problems running the previous formal version check if this

I get this error stream with gcc-2.96 (equiv from 2.95.2):

/cs/src/gcc/gcc-2.96experimental/SunOS5.7-latest/bin/g++ -I. -I/course/cs196e/include -I/cs/src/gcc/gcc-2.96experimental/SunOS5.7-latest/include/g++-v3/ext -I/u/jdy/boost_1_21_1 -I/u/jdy/boost_1_21_1/crc -g -D_REENTRANT -DDEBUG -D_POSIX_PTHREAD_SEMANTICS -c driver.C
In file included from layer3.h:32,
                 from driver.C:37:
/u/jdy/boost_1_21_1/crc/boost/crc.hpp:52: default argument for template
   parameter in function template `typename boost::uint_t<Bits>::fast
   boost::crc(const void*, unsigned int)'
/u/jdy/boost_1_21_1/crc/boost/crc.hpp:96: using `typename' outside of template
/u/jdy/boost_1_21_1/crc/boost/crc.hpp:105: using `typename' outside of template
/u/jdy/boost_1_21_1/crc/boost/crc.hpp:115: using `typename' outside of template

Removing the `typename' "fixes" the errors on line 96,105,115

Commenting out the block at line 52 (all of the crc function) seems to
let it build and run.

I don't understand why (mycrc2.checksum() != 0) at the end of
the following code chunk. Any suggestions?

    struct Header {
      unsigned char a : 4;
      unsigned char b : 4;
      signed char c; // 8
      unsigned short d; // 16
      int e; // 32
      int f; // 32
      unsigned short empty; // 16
      unsigned short checkVal; // 16

    typedef boost::crc_basic<16> mc_t;

    mc_t mycrc1( 0x8005,0x0,0,false,false);
      (void const*)header,
    IPheader->checkVal = mycrc1.checksum();

    mc_t mycrc2( 0x8005,0x0,0,false,false);
      (void const*)header,


Boost list run by bdawes at, gregod at, cpdaniel at, john at