You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openoffice.apache.org by Peter Kovacs <Pe...@Apache.org> on 2017/11/14 06:40:06 UTC
build went through without compiler errors, but had to make some
changes with guesses
Hi all,
I am proudly did finish a build tonight.
However I did2 additional Code changes. I do not trust my choice. :P
Both changes targetet to make the compiler happy, and to make a best
shot correctness.
But I do not understand what I changed, I probably did it wrong. :-D
1) packagepixeliterator.hxx line 611
Error:
const int remainder( x(d.x) % num_intraword_positions );
Explanaition: x is an int while d.x is also int because d is a
vigra:Diff2D. The compiler wants to caculate something but interprets x
as a functioncall thus fails.
Fix:
I gave the compiler a valid formula. I thought maybe t is a dif and we
want to move. I decided at random for negative move. Probable positive
(+) would be more wise. Now that I think of it.
But I realy dont know f it is the right way.
const int remainder( (x-d.x) % num_intraword_positions );
2)svptext.cxx in SvpGlyphPeer::RemovingGlyph
Error:
if( rGlyphData.ExtDataRef().mpData != Format::NONE ) -> c++ compile
error: ISO C++ forbids comparison between pointer and integer
<https://stackoverflow.com/questions/2263681/c-compile-error-iso-c-forbids-comparison-between-pointer-and-integer>
Explanation: Format::NONE = 0, so I did not get the -fpermissive flag to
work. So I looked at the code. An alternative that probable makes sense
is to check at this point if something is at all in
rGlyphData.ExtDataRef().mpData.
So instead of checking against Format::None I check now against NULL,
Which the compiler accepted.
I will now try to find out what damage my guesses did. If you have any
Idea how to check or any insight on where I changed code I am gratefull.
One last comment the code in both cases, I miss to see the beauty. I
mean packagepiceliterator has the antipattern of Copy And Paste, while
SvpGlyphPeer::RemovingGlyph tries to delete content from another class.
And that class looks generic, due to the void object I think rGlyphData
itself does not know what it is storing.
I do not like both codeparts.
All the best
Peter
Re: build went through without compiler errors, but had to make some changes with guesses
Posted by Peter kovacs <pe...@apache.org>.
I am currently reviewing when the code is used. If it is never used i would like to drop the code without replacement.
Will change the formula to x+d.x if it compiles again I check this one into subversion, only to be on the save side.
Documentation will then be done via bugzilla.
Am 14. November 2017 23:42:39 MEZ schrieb Don Lewis <tr...@apache.org>:
>On 14 Nov, Peter Kovacs wrote:
>> Hi all,
>>
>> I am proudly did finish a build tonight.
>>
>> However I did2 additional Code changes. I do not trust my choice. :P
>>
>> Both changes targetet to make the compiler happy, and to make a best
>> shot correctness.
>>
>> But I do not understand what I changed, I probably did it wrong. :-D
>>
>>
>> 1) packagepixeliterator.hxx line 611
>>
>> Error:
>>
>> const int remainder( x(d.x) % num_intraword_positions );
>>
>> Explanaition: x is an int while d.x is also int because d is a
>> vigra:Diff2D. The compiler wants to caculate something but interprets
>x
>> as a functioncall thus fails.
>
>I wonder how this ever worked ... maybe this code is never used so
>older compilers ignored it.
>
>> Fix:
>>
>> I gave the compiler a valid formula. I thought maybe t is a dif and
>we
>> want to move. I decided at random for negative move. Probable
>positive
>> (+) would be more wise. Now that I think of it.
>>
>> But I realy dont know f it is the right way.
>>
>> const int remainder( (x-d.x) % num_intraword_positions );
>
>Based on the similar set( value_type v, difference_type const & d )
>code further down, it looks like + should be used instead of -.
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: dev-unsubscribe@openoffice.apache.org
>For additional commands, e-mail: dev-help@openoffice.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@openoffice.apache.org
For additional commands, e-mail: dev-help@openoffice.apache.org
Re: build went through without compiler errors, but had to make some
changes with guesses
Posted by Don Lewis <tr...@apache.org>.
On 14 Nov, Peter Kovacs wrote:
> Hi all,
>
> I am proudly did finish a build tonight.
>
> However I did2 additional Code changes. I do not trust my choice. :P
>
> Both changes targetet to make the compiler happy, and to make a best
> shot correctness.
>
> But I do not understand what I changed, I probably did it wrong. :-D
>
>
> 1) packagepixeliterator.hxx line 611
>
> Error:
>
> const int remainder( x(d.x) % num_intraword_positions );
>
> Explanaition: x is an int while d.x is also int because d is a
> vigra:Diff2D. The compiler wants to caculate something but interprets x
> as a functioncall thus fails.
I wonder how this ever worked ... maybe this code is never used so
older compilers ignored it.
> Fix:
>
> I gave the compiler a valid formula. I thought maybe t is a dif and we
> want to move. I decided at random for negative move. Probable positive
> (+) would be more wise. Now that I think of it.
>
> But I realy dont know f it is the right way.
>
> const int remainder( (x-d.x) % num_intraword_positions );
Based on the similar set( value_type v, difference_type const & d )
code further down, it looks like + should be used instead of -.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@openoffice.apache.org
For additional commands, e-mail: dev-help@openoffice.apache.org