On Tue, Sep 20, 2011 at 04:13:37PM -0500, Bollinger, John C wrote:
> Hello All,
Hi,
>
> As I wrote a few minutes ago, I am attempting to build PDFedit v 0.4.5
> on CentOS 5, using the distro's provided GCC 4.1.2 toolchain.
Don't want to blame gcc here but 4.1.x was plain wrong. I would
encourage you to use something newer.
Anyway,
> The method CPageContents::addInlineImage() is giving me some trouble,
> the bulk of which I raised in my previous mail. In addition, however,
> I see some worrisome warnings in the same method:
>
> g++ -c -g -O2 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fno-strict-aliasing
> -fexceptions -fstack-protector -pipe -posix -ansi -std=c++98 -pedantic -I.
> -I/home/jbolling/rpm/BUILD/pdfedit-0.4.5/src
> -I/home/jbolling/rpm/BUILD/pdfedit-0.4.5/src/xpdf/ -I/usr/include
> -I/usr/include/freetype2 -I/usr/include -o cpagecontents.o cpagecontents.cc
> cpagecontents.cc: In member function 'void
> pdfobjects::CPageContents::addInlineImage(const std::vector<char,
> std::allocator<char> >&, const libs::Point&, const libs::Point&)':
> cpagecontents.cc:543: warning: passing 'const double' for argument 1 to
> 'pdfobjects::CObjectSimple<Tp>::CObjectSimple(const typename
> pdfobjects::PropertyTraitSimple<Tp>::value&) [with pdfobjects::PropertyType
> Tp = pInt]'
> [...]
> cpagecontents.cc:544: warning: passing 'const double' for argument 1 to
> 'pdfobjects::CObjectSimple<Tp>::CObjectSimple(const typename
> pdfobjects::PropertyTraitSimple<Tp>::value&) [with pdfobjects::PropertyType
> Tp = pInt]'
>
> These arise from the following two lines of code:
>
> image_dict.addProperty ("W", CInt (image_size.x));
> image_dict.addProperty ("H", CInt (image_size.y));
>
> Evidently, image_size.x and image_size.y are of type (const double),
> but they are passed to a constructor expecting an int&. I'm neither
> sure what is needed, nor sure what actually happens here (and that in
> itself is a minor problem). Given that we're dealing with references,
> however, I can't think of an approach the compiler could take to the
> issue that would be likely to have a satisfactory result.
The warning is bogus. Pointer should just cast real to int (truncate it)
and then provide a reference to a temporal int variable.
>
> The most obvious fix would be to change the CInts to CReals, but I
> don't know whether that would cause trouble elsewhere in the program.
PDF specification says that both Width and Height are integers so CInt
is appropriate.
>
>
> Best,
>
> John Bollinger
>
>
> Email Disclaimer: www.stjude.org/emaildisclaimer
>
>
> ------------------------------------------------------------------------------
> All the data continuously generated in your IT infrastructure contains a
> definitive record of customers, application performance, security
> threats, fraudulent activity and more. Splunk takes this data and makes
> sense of it. Business sense. IT sense. Common sense.
> http://p.sf.net/sfu/splunk-d2dcopy1
> _______________________________________________
> Pdfedit-support mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/pdfedit-support
--
Michal Hocko
------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
Pdfedit-support mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/pdfedit-support