[gil] Who has a big-endian machine?

Hi there, could someone with a big-endian machine run the following code with the latest gil code from the trunk? #include <cassert> #include <vector> #include <boost/gil/gil_all.hpp> using namespace boost; using namespace gil; int main() { typedef bit_aligned_image1_type< 3, gray_layout_t >::type gray3_image_t; typedef gray3_image_t image_t; typedef image_t::view_t view_t; typedef view_t::reference ref_t; typedef bit_aligned_pixel_iterator< ref_t > iterator_t; std::vector< unsigned char > buf( 4 ); // bit pattern is: 1011 0110 0110 1101 1101 1011 // each byte is read right to left buf[0] = 182; buf[1] = 109; buf[2] = 219; iterator_t it( &buf[0], 0 ); ref_t p1 = *it; it++; ref_t p2 = *it; it++; ref_t p3 = *it; it++; ref_t p4 = *it; it++; ref_t p5 = *it; it++; ref_t p6 = *it; it++; ref_t p7 = *it; it++; ref_t p8 = *it; it++; unsigned char v1 = get_color( p1, gray_color_t() ); unsigned char v2 = get_color( p2, gray_color_t() ); unsigned char v3 = get_color( p3, gray_color_t() ); unsigned char v4 = get_color( p4, gray_color_t() ); unsigned char v5 = get_color( p5, gray_color_t() ); unsigned char v6 = get_color( p6, gray_color_t() ); unsigned char v7 = get_color( p7, gray_color_t() ); unsigned char v8 = get_color( p8, gray_color_t() ); // all values should be 110b ( 6 ); assert( v1 == 6 ); assert( v2 == 6 ); assert( v3 == 6 ); assert( v4 == 6 ); assert( v5 == 6 ); assert( v6 == 6 ); assert( v7 == 6 ); assert( v8 == 6 ); return 0; } Thanks ahead, Christian

On Sep 1, 2010, at 12:05 PM, Christian Henning wrote:
Hi there, could someone with a big-endian machine run the following code with the latest gil code from the trunk?
uname -a SunOS sass8000 5.10 Generic_137137-09 sun4u sparc SUNW,Sun-Fire /opt/sunstudio12.1/bin/CC -features=tmplife -features=tmplrefstatic - library=stlport4 -g -I/scratch2/kbelco/boost/boost gil.cpp ./a.out Assertion failed: v1 == 6, file gil.cpp, line 47 Abort (core dumped) -- Noel
participants (2)
-
Belcourt, Kenneth
-
Christian Henning