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

Toby Shaw edited comment on ARROW-1134 at 6/21/17 4:38 PM:
-----------------------------------------------------------

I agree that is probably the most sensible way to fix this.

As for the list, sadly I don't believe there exists one (if there is I would 
love to know about it). It's a fair point that simply hiding the mutex includes 
might not necessarily resolve all of the restrictions on C++/CLI. Having said 
that, I locally resolved the mutex issue by using Boost's headers instead, and 
there was one complaint about a nullptr (fixed by replacing it with NULL), and 
after that it worked fine. Of course I haven't touched the entire Arrow API, so 
certainly more digging might be needed.




was (Author: tobyshaw):
I agree that is probably the most sensible way to fix this.

As for the list, sdaly I don't believe there exists one (if there is I would 
love to know about it). It's a fair point that simply hiding the mutex includes 
might not necessarily resolve all of the restrictions on C++/CLI. Having said 
that, I locally resolved the mutex issue by using Boost's headers instead, and 
there was one complaint about a nullptr (fixed by replacing it with NULL), and 
after that it worked fine. Of course I haven't touched the entire Arrow API, so 
certainly more digging might be needed.



>  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