[ 
https://issues.apache.org/jira/browse/ARROW-1134?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16059417#comment-16059417
 ] 

Toby Shaw commented on ARROW-1134:
----------------------------------

I mentioned earlier about C++/CLI complaining about nullptr usage. C++/CLI 
already had a nullptr keyword when C++11 introduced its own. This leads to 
incompatibilities when building with native projects which use nullptrs in 
header files.

Annoyingly, the nullptrs which exist in header files are as default arguments, 
which need to live in headers. The recommended fix is to use __nullptr instead 
of nullptr, but I'm not sure if that is valid C++ outside of Visual C++


(All these changes also apply to parquet-cpp)

>  Allow C++/CLI projects to build with Arrow​
> --------------------------------------------
>
>                 Key: ARROW-1134
>                 URL: https://issues.apache.org/jira/browse/ARROW-1134
>             Project: Apache Arrow
>          Issue Type: Improvement
>          Components: C++
>            Reporter: Toby Shaw
>            Priority: Minor
>
> Currently, the inclusion of <mutex> in some of Arrow's C++ headers prevents 
> C++/CLI code from building against it.
> From a C++/CLI project:
> #include <arrow/io/file.h>
> ...
> "#error directive: <mutex> is not supported when compiling with /clr or 
> /clr:pure."
> This could be patched by optionally relying on Boost's mutex/lock_guard 
> instead of std, or not exposing the #include <mutex> publically.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to