<div dir="ltr">Hi Davide<div><br></div><div>C++03 code can be compiled with C++11 compiler. Forcing dependent projects to use C++11 only requires them to change Makefile or wscript, which is trivial; there's no code change needed.</div><div><br></div><div>There's major performance benefit to make ndn-cxx compile in C++11 exclusively. The benefit mainly comes from move constructors, either used directly or used indirectly from STL.</div><div><br></div><div>Yours, Junxiao<br><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Oct 19, 2014 at 8:45 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"><span>On Sun, Oct 19, 2014 at 5:28 PM, Junxiao Shi<br>
<<a href="mailto:shijunxiao@email.arizona.edu" target="_blank">shijunxiao@email.arizona.edu</a>> wrote:<br>
> Hi Davide<br>
><br>
> I would say: ndn-cxx, NFD, and all other projects depending on ndn-cxx<br>
> should be compiled exclusively in C++11 mode.<br>
> We have never used C++98 mode. Currently we are using C++03 mode.<br>
<br>
</span>C++98 and C++03 are the same thing.<br>
<span><br>
><br>
> It's unnecessary for ndn-cxx to keep C++03 compatibility, for the following<br>
> reasons:<br>
><br>
> ndn-cxx and projects depending on it are almost useless without NFD running<br>
> on the same machine.<br>
><br>
> "almost": ndn-cxx's Face needs NFD. Few applications don't use Face: tlvdump<br>
> is an example.<br>
><br>
> When NFD is running on the same machine, the platform must have a C++11<br>
> compiler, so ndn-cxx and other projects can be compiled in C++11 mode.<br>
> Performance benefits of C++11 (mainly from move constructor) are severely<br>
> limited when ndn-cxx wants to keep C++03 compatibility.<br>
><br>
<br>
</span>Personally, I agree. However I believe we were concerned about<br>
third-party applications compiling and linking against ndn-cxx, and<br>
that we didn't want to force C++11 onto them.<br>
<span><br>
><br>
> Yours, Junxiao<br></span></blockquote></div></div></div></div>