I am not sure why, but if you use gcc++98 std it compiles. Maybe it
optimizes the code since it might be dead code.
I rewrote the whole code, and used one class instead of 4 macros that
copy paste from each other. I can post the code.
But I do not know how to test or apply it into the rest. :P
On 05.11.19 19:54, Don Lewis wrote:
> I don't understand what this strange little bit of code (line 611 of
> basebmp/inc/basebmp/packedpixeliterator.hxx) is supposed to do:
>
> value_type get(difference_type const & d) const
> {
> const int remainder( x(d.x) % num_intraword_positions );
> ^^^^^^
> return (unsigned_cast<value_type>(*current(d.x,d.y) &
> get_mask<value_type,
> bits_per_pixel, MsbFirst>(remainder))
> >> get_shift<num_intraword_positions, bits_per_pixel,
> MsbFirst>(remainder));
> }
>
> I've never seen any compiler complaints about it before, but gcc 9
> throws an error:
>
> ../inc/basebmp/packedpixeliterator.hxx: In member function
> 'basebmp::PackedPixel
> Iterator<Valuetype, bits_per_pixel, MsbFirst>::value_type
> basebmp::PackedPixelIt
> erator<Valuetype, bits_per_pixel, MsbFirst>::get(const difference_type&)
> const':
> ../inc/basebmp/packedpixeliterator.hxx:611:35: error: expression cannot be
> used
> as a function
> 611 | const int remainder( x(d.x) % num_intraword_positions );
> | ^
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]