< Previous by Date Date Index Next by Date >
< Previous in Thread Thread Index Next in Thread >

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


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.

Scott


On Tue, Sep 10, 2013 at 9:21 AM, Daniel Pocock <daniel@xxxxxxxxxxxxx> wrote:

I notice these are all supposed to be fixed-size types so hopefully casts are OK

Do you see this change being more problematic than that for Windows users?

It is not something I intend to put into the 1.8.x branch, it is only for v1.9 and beyond



On 10/09/13 15:10, Scott Godin wrote:
Hi Daniel,

These changes break builds on windows.  Here is a sample of the output from Visual Studio 2010:
2>d:\myprojects\resip-main\rutil\wincompat.cxx(362): error C2440: '<function-style-cast>' : cannot convert from 'DWORD' to 'resip::Data'
2>          No constructor could take the source type, or constructor overload resolution was ambiguous
2>d:\myprojects\resip-main\rutil\wincompat.cxx(369): error C2440: '<function-style-cast>' : cannot convert from 'ULONG' to 'resip::Data'
2>          No constructor could take the source type, or constructor overload resolution was ambiguous
2>d:\myprojects\resip-main\rutil\wincompat.cxx(369): error C2440: '<function-style-cast>' : cannot convert from 'DWORD' to 'resip::Data'
2>          No constructor could take the source type, or constructor overload resolution was ambiguous
2>d:\myprojects\resip-main\rutil\wincompat.cxx(406): error C2440: '<function-style-cast>' : cannot convert from 'DWORD' to 'resip::Data'
2>          No constructor could take the source type, or constructor overload resolution was ambiguous

Looking into it now.

Scott



On Tue, Sep 10, 2013 at 7:30 AM, Daniel Pocock <daniel@xxxxxxxxxxxxx> wrote:



I'm not sure if all the fixed-size integer stuff should be merged in for
v1.9

However, I feel it is a good idea to start using it for Data, because
some of the methods expect certain sizes anyway

I've made some small updates for this and it means that the Data.hxx API
has changed slightly, the Data(unsigned long) constructor is gone and
now you have to use Data(Int32), Data(UInt32) or Data(UInt64).

Regards,

Daniel
_______________________________________________
resiprocate-devel mailing list
resiprocate-devel@xxxxxxxxxxxxxxx
https://list.resiprocate.org/mailman/listinfo/resiprocate-devel