[Nfd-dev] Using (some features of) C++11

Junxiao Shi shijunxiao at email.arizona.edu
Sun Oct 19 08:28:11 PDT 2014


Hi Davide

I would say: ndn-cxx, NFD, and all other projects depending on ndn-cxx
should be compiled exclusively in C++11 mode.
We have never used C++98 mode. Currently we are using C++03 mode.

It's unnecessary for ndn-cxx to keep C++03 compatibility, for the following
reasons:

   - ndn-cxx and projects depending on it are almost useless without NFD
   running on the same machine.
      - "almost": ndn-cxx's Face needs NFD. Few applications don't use
      Face: tlvdump is an example.
   - When NFD is running on the same machine, the platform must have a
   C++11 compiler, so ndn-cxx and other projects can be compiled in C++11 mode.
   - Performance benefits of C++11 (mainly from move constructor) are
   severely limited when ndn-cxx wants to keep C++03 compatibility.


Yours, Junxiao

On Sun, Oct 19, 2014 at 7:59 AM, Davide Pesavento <davide.pesavento at lip6.fr>
wrote:

> I've been thinking about this for a while but I haven't found a good
> solution for the (potential) ABI incompatibilities yet [1]. It might
> even be a non-issue for us, but unfortunately there's no easy way to
> check.
>
> Would it be too unreasonable to build two variants of ndn-cxx, one
> using C++98 and one using C++11?
>
> [1] Assuming NFD will be compiled exclusively in C++11 mode, while
> ndn-cxx stays compatible with both C++11 and C++98.
>
> Best,
> Davide
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.lists.cs.ucla.edu/pipermail/nfd-dev/attachments/20141019/365267ba/attachment.html>


More information about the Nfd-dev mailing list