[reSIProcate] v1.9 and fixed-size integer types (UInt32, uint32_t, etc)

Scott Godin sgodin at sipspectrum.com
Tue Sep 10 09:35:33 CDT 2013


Yeah I was worried about that.  The unsigned long constructor obviously
isn't required for those platforms so we could just #ifdef it out entirely
based on platform.    or... we can #ifdef the unsigned long constructor in
for particular platforms (ie: Win32).  Any preferences out there?

Scott


On Tue, Sep 10, 2013 at 10:15 AM, Daniel Pocock <daniel at pocock.com.au>wrote:

> On 10/09/13 15:59, Scott Godin wrote:
> > Casting will fix it.  However I am concerned about application level
> > code out there.  I know I use the Data class everywhere in my resip
> > based applications.  This is almost certainly going to cause headaches
> > for people.  We might be better off adding back a unsigned long
> > constructor and marking it as deprecated, so there are compiler
> > warnings vs compiler errors.  See any issues with that?  I'm trying in
> > windows right now.
>
>
> I don't mind putting it back in like that, but I encountered some issue
> when trying to support all these types on the stdint branch (for
> uint32_t and friends)
>
> I don't remember the exact details, but on platforms without the C++11
> types, using typedefs, there were situations where the compiler barfs
> because it thinks two of these three constructors are the same:
>
> Data(UInt32 value)
> Data(unsinged long value)
> Data(UInt64 value)
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.resiprocate.org/pipermail/resiprocate-devel/attachments/20130910/c2dd8cbe/attachment.htm>


More information about the resiprocate-devel mailing list