On 2019/10/04 16:53:59, Antoine Pitrou <anto...@python.org> wrote: 
> 
> Le 04/10/2019 à 18:05, Zhuo Peng a écrit :
> > Dear Arrow maintainers,
> > 
> > Sorry if this was raised before. I did search the mailing list but "C++" 
> > matched too many results..
> > 
> > With manylinux1 (GCC4.8) being sunset, both Conda and Pypa are providing a 
> > modern enough toolchain (Conda Forge - GCC7; Pypa manylinux2010 docker - 
> > devtoolset-8(GCC8)). And full C++17 support has been included in GCC7 [1]. 
> > I wonder what are the concerns of adopting a newer standard?
> >  
> > C++14 might not bring a whole lot of interesting features, but C++17 brings:
> > 
> > std::string_view
> > std::optional
> > std::variant (the newly added Result class is based on some form of variant 
> > implementation I suppose?)
> 
> We already have `string_view` and `variant` backports.  We could
> reasonably add a `optional` backport.
> 
backports are cool for internal use, but probably not so if a public API 
accepts it? (because you vendor the headers in (i.e. namespace, symbol names 
unchanged), they might clash with headers that a client uses).

> > And btw, was -std=gnu++11 an intentional choice? what gnu extensions does 
> > the library rely on?
> 
> None, AFAIK.  Arrow compiles on MSVC fine.  Where is -std=gnu++11 added?
https://github.com/apache/arrow/blob/3129e3ed90219ecfffe2a25ce5820eec8cc947d0/cpp/cmake_modules/SetupCxxFlags.cmake#L33

https://cmake.org/cmake/help/v3.1/prop_tgt/CXX_STANDARD.html
> 
> Regards
> 
> Antoine.
> 

Reply via email to