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

Re: [reSIProcate-users] C++11 support


On 20/02/15 11:30, Jonathan Pallant wrote:
Hi,

I'm building an application using Resiprocate. I'm using GCC 4.8 and I'd prefer to use C++11 mode, but the compilation fails. There are a lot of "auto_ptr is deprecated" warnings, which I guess I can ignore, but const resip::Data& resip::MessageWaitingContents::header(const resip::Data&) const fails to compile.

Looking at the code, it seems to be the handling for non-existent headers that's unhappy, so I've changed it to throw if you ask for a non-existent header and it seems to work. Everything else appears to compile fine.

Is C++11 going to be officially supported at some point?

I wouldn't have any objection to supporting C++11 but it would be useful to hear the opinions of some other developers too.

The process would be something like this:

a) make a Github fork

b) in your fork make a branch, call it something like b-cpp11-eval

c) tweak the .travis.yml file in your branch to add a C++11 permutation of the build (leave the existing builds with gcc and clang there too)

d) commit the code changes to support C++11

e) submit a pull request for your-fork:yourbranch against resiprocate:master - this will cause travis-ci to make a build for the rest of us to review.  It it looks good, and if the diff is easy for us to review, then we can look at merging it.

There are some users who have expressed concern about the use of exceptions and associated try/catch blocks as they want to minimize the size of the binary so please keep that in mind.

Regards,

Daniel