<div dir="ltr">Hi Davide<div><br></div><div>I would say: ndn-cxx, NFD, and all other projects depending on ndn-cxx should be compiled exclusively in C++11 mode.</div><div>We have never used C++98 mode. Currently we are using C++03 mode.</div><div><br></div><div>It's unnecessary for ndn-cxx to keep C++03 compatibility, for the following reasons:</div><div><ul><li>ndn-cxx and projects depending on it are almost useless without NFD running on the same machine.</li><ul><li>"almost": ndn-cxx's Face needs NFD. Few applications don't use Face: tlvdump is an example.</li></ul><li>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.</li><li>Performance benefits of C++11 (mainly from move constructor) are severely limited when ndn-cxx wants to keep C++03 compatibility.</li></ul></div><div><br></div><div>Yours, Junxiao<br><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Oct 19, 2014 at 7:59 AM, Davide Pesavento <span dir="ltr"><<a href="mailto:davide.pesavento@lip6.fr" target="_blank">davide.pesavento@lip6.fr</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I've been thinking about this for a while but I haven't found a good<br>
solution for the (potential) ABI incompatibilities yet [1]. It might<br>
even be a non-issue for us, but unfortunately there's no easy way to<br>
check.<br>
<br>
Would it be too unreasonable to build two variants of ndn-cxx, one<br>
using C++98 and one using C++11?<br>
<br>
[1] Assuming NFD will be compiled exclusively in C++11 mode, while<br>
ndn-cxx stays compatible with both C++11 and C++98.<br>
<br>
Best,<br>
Davide<br></blockquote></div></div></div></div>