[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: [PATCH] - Fix a compiler warning on OSX

From: Arfrever Frehtes Taifersar Arahesis <arfrever.fta_at_gmail.com>
Date: 2007-12-26 21:01:20 CET

2007-11-22 20:14:33 David Glasser napisał(a):
> On Nov 22, 2007 1:09 PM, Arfrever Frehtes Taifersar Arahesis
> <arfrever.fta@gmail.com> wrote:
> > 2007-11-20 20:12:38 Karl Fogel napisał(a):
> > > "Mark Phippard" <markphip@gmail.com> writes:
> > > > I noticed this in my output. I report it only because a similar
> > > > warning in the mergeinfo.c code was fixed last week, therefore I
> > > > assume people think it is a good idea to fix these.
> > > >
> > > > subversion/libsvn_subr/xml.c: In function 'svn_xml_parse':
> > > > subversion/libsvn_subr/xml.c:402: warning: format '%d' expects type
> > > > 'int', but argument 5 has type 'XML_Size'
> > > >
> > > > Changing the format specifier to %ld makes the warning go away. I
> > > > imagine an XML file is not likely to have a line number that is bigger
> > > > than the size of int, and I was not sure if there are some
> > > > platform-specific size differences, so I did not just blindly commit
> > > > it. Also, according to blame it looks like the code has been around a
> > > > while.
> > > >
> > > > I have attached a patch with log message. If this is something we
> > > > should fix then let me know and I can commit it.
> > >
> > > What version of expat do you have? I have 1.95.8; you can look in
> > > /usr/include/expat.h for this:
> > >
> > > #define XML_MAJOR_VERSION 1
> > > #define XML_MINOR_VERSION 95
> > > #define XML_MICRO_VERSION 8
> > >
> > > Also in expat.h, I see this:
> > >
> > > XMLPARSEAPI(int) XML_GetCurrentLineNumber(XML_Parser parser);
> >
> > I have in /usr/include/expat.h:
> > #define XML_MAJOR_VERSION 2
> > #define XML_MINOR_VERSION 0
> > #define XML_MICRO_VERSION 1
> > ...
> > XMLPARSEAPI(XML_Size) XML_GetCurrentLineNumber(XML_Parser parser);
>
> Yeah, so expat 2 returns XML_Size (which is roughly some sort of
> long), whereas expat 1 returns int.
>
> We could use some preprocessor trickery involving XML_MAJOR_VERSION to
> calculate the proper format string.

[[[
* subversion/libsvn_subr/xml.c
  (svn_xml_parse): When creating error messages, use format specifier
  conditionalized by the version of Expat.

Patch by: markphip
          arfrever
]]]

-- 
Arfrever Frehtes Taifersar Arahesis

Received on Wed Dec 26 21:06:26 2007

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.