Opened 9 years ago
#9383 new Bugs
augmented_crc example fails
| Reported by: | Owned by: | Daryle Walker | |
|---|---|---|---|
| Milestone: | To Be Determined | Component: | crc |
| Version: | Boost 1.55.0 | Severity: | Regression |
| Keywords: | augmented_crc | Cc: |
Description
I just built Boost 1.55.0 with VS 2008. Runs, but the example from
http://www.boost.org/doc/libs/1_55_0/libs/crc/crc.html#crc_func
fails.
Source:
// boost_ending.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include <boost/crc.hpp> // for boost::crc_basic, boost::augmented_crc
#include <boost/cstdint.hpp> // for boost::uint16_t
#include <cassert> // for assert
#include <iostream> // for std::cout
#include <ostream> // for std::endl
// Main function
int _tmain(int argc, _TCHAR* argv[]) {
using boost::uint16_t;
using boost::augmented_crc;
uint16_t data[6] = { 2, 4, 31, 67, 98, 0 };
uint16_t const init_rem = 0x123;
uint16_t crc1 = augmented_crc<16, 0x8005>( data, sizeof(data), init_rem );
uint16_t const zero = 0;
uint16_t const new_init_rem = augmented_crc<16, 0x8005>( &zero, sizeof(zero) );
boost::crc_basic<16> crc2( 0x8005, new_init_rem );
crc2.process_block( data, &data[5] ); // don't include CRC
std::cout << "crc2: " << crc2.checksum() << std::endl;
std::cout << "crc1: " << crc1 << std::endl;
assert( crc2.checksum() == crc1 );
std::cout << "All tests passed." << std::endl;
std::cin.ignore();
return 0;
}
Output:
crc2: 22581 crc1: 36743 Assertion failed: crc2.checksum() == crc1, file boost_ending.cpp, line 33
Note:
See TracTickets
for help on using tickets.
