[jira] [Commented] (ARROW-1134) [C++] Allow C++/CLI projects to build with Arrow​

2017-10-25 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on ARROW-1134:
---

wesm closed pull request #1228: ARROW-1134: [C++] Support for C++/CLI 
compilation, add NULLPTR define to avoid using nullptr in public headers
URL: https://github.com/apache/arrow/pull/1228
 
 
   

This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:

As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):

diff --git a/cpp/src/arrow/allocator.h b/cpp/src/arrow/allocator.h
index e00023dc4..c7780f19e 100644
--- a/cpp/src/arrow/allocator.h
+++ b/cpp/src/arrow/allocator.h
@@ -24,6 +24,7 @@
 
 #include "arrow/memory_pool.h"
 #include "arrow/status.h"
+#include "arrow/util/macros.h"
 
 namespace arrow {
 
@@ -49,13 +50,13 @@ class stl_allocator {
   template 
   stl_allocator(const stl_allocator& rhs) noexcept : pool_(rhs.pool_) {}
 
-  ~stl_allocator() { pool_ = nullptr; }
+  ~stl_allocator() { pool_ = NULLPTR; }
 
   pointer address(reference r) const noexcept { return std::addressof(r); }
 
   const_pointer address(const_reference r) const noexcept { return 
std::addressof(r); }
 
-  pointer allocate(size_type n, const void* /*hint*/ = nullptr) {
+  pointer allocate(size_type n, const void* /*hint*/ = NULLPTR) {
 uint8_t* data;
 Status s = pool_->Allocate(n * sizeof(T), );
 if (!s.ok()) throw std::bad_alloc();
diff --git a/cpp/src/arrow/array.h b/cpp/src/arrow/array.h
index 75dda4a75..a45563aa9 100644
--- a/cpp/src/arrow/array.h
+++ b/cpp/src/arrow/array.h
@@ -183,14 +183,14 @@ class ARROW_EXPORT Array {
 
   /// \brief Return true if value at index is null. Does not boundscheck
   bool IsNull(int64_t i) const {
-return null_bitmap_data_ != nullptr &&
+return null_bitmap_data_ != NULLPTR &&
BitUtil::BitNotSet(null_bitmap_data_, i + data_->offset);
   }
 
   /// \brief Return true if value at index is valid (not null). Does not
   /// boundscheck
   bool IsValid(int64_t i) const {
-return null_bitmap_data_ != nullptr &&
+return null_bitmap_data_ != NULLPTR &&
BitUtil::GetBit(null_bitmap_data_, i + data_->offset);
   }
 
@@ -212,13 +212,13 @@ class ARROW_EXPORT Array {
 
   /// Buffer for the null bitmap.
   ///
-  /// Note that for `null_count == 0`, this can be a `nullptr`.
+  /// Note that for `null_count == 0`, this can be null.
   /// This buffer does not account for any slice offset
   std::shared_ptr null_bitmap() const { return data_->buffers[0]; }
 
   /// Raw pointer to the null bitmap.
   ///
-  /// Note that for `null_count == 0`, this can be a `nullptr`.
+  /// Note that for `null_count == 0`, this can be null.
   /// This buffer does not account for any slice offset
   const uint8_t* null_bitmap_data() const { return null_bitmap_data_; }
 
@@ -270,7 +270,7 @@ class ARROW_EXPORT Array {
 if (data->buffers.size() > 0 && data->buffers[0]) {
   null_bitmap_data_ = data->buffers[0]->data();
 } else {
-  null_bitmap_data_ = nullptr;
+  null_bitmap_data_ = NULLPTR;
 }
 data_ = data;
   }
@@ -299,7 +299,7 @@ class ARROW_EXPORT NullArray : public FlatArray {
 
  private:
   inline void SetData(const std::shared_ptr& data) {
-null_bitmap_data_ = nullptr;
+null_bitmap_data_ = NULLPTR;
 data->null_count = data->length;
 data_ = data;
   }
@@ -310,7 +310,7 @@ class ARROW_EXPORT PrimitiveArray : public FlatArray {
  public:
   PrimitiveArray(const std::shared_ptr& type, int64_t length,
  const std::shared_ptr& data,
- const std::shared_ptr& null_bitmap = nullptr,
+ const std::shared_ptr& null_bitmap = NULLPTR,
  int64_t null_count = 0, int64_t offset = 0);
 
   /// Does not account for any slice offset
@@ -325,7 +325,7 @@ class ARROW_EXPORT PrimitiveArray : public FlatArray {
   inline void SetData(const std::shared_ptr& data) {
 auto values = data->buffers[1];
 this->Array::SetData(data);
-raw_values_ = values == nullptr ? nullptr : values->data();
+raw_values_ = values == NULLPTR ? NULLPTR : values->data();
   }
 
   explicit inline PrimitiveArray(const std::shared_ptr& data) {
@@ -349,7 +349,7 @@ class ARROW_EXPORT NumericArray : public PrimitiveArray {
   NumericArray(
   typename std::enable_if::type length,
   const std::shared_ptr& data,
-  const std::shared_ptr& null_bitmap = nullptr, int64_t null_count 
= 0,
+  const std::shared_ptr& null_bitmap = NULLPTR, int64_t null_count 
= 0,
   int64_t offset = 0)
   : PrimitiveArray(TypeTraits::type_singleton(), length, data, 
null_bitmap,
null_count, offset) {}
@@ -371,7 +371,7 @@ class ARROW_EXPORT 

[jira] [Commented] (ARROW-1134) [C++] Allow C++/CLI projects to build with Arrow​

2017-10-24 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on ARROW-1134:
---

cpcloud commented on issue #1228: ARROW-1134: [C++] Support for C++/CLI 
compilation, add NULLPTR define to avoid using nullptr in public headers
URL: https://github.com/apache/arrow/pull/1228#issuecomment-339185435
 
 
   +1 LGTM


This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> [C++] 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
>Assignee: Wes McKinney
>Priority: Minor
>  Labels: pull-request-available
> Fix For: 0.8.0
>
>
> Currently, the inclusion of  in some of Arrow's C++ headers prevents 
> C++/CLI code from building against it.
> From a C++/CLI project:
> #include 
> ...
> "#error directive:  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  publically.



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


[jira] [Commented] (ARROW-1134) [C++] Allow C++/CLI projects to build with Arrow​

2017-10-24 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on ARROW-1134:
---

wesm commented on issue #1228: ARROW-1134: [C++] Support for C++/CLI 
compilation, add NULLPTR define to avoid using nullptr in public headers
URL: https://github.com/apache/arrow/pull/1228#issuecomment-339159755
 
 
   In the meantime we'll need to add a linting script so that this work does 
not get undone by a future patch


This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> [C++] 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
>Assignee: Wes McKinney
>Priority: Minor
>  Labels: pull-request-available
> Fix For: 0.8.0
>
>
> Currently, the inclusion of  in some of Arrow's C++ headers prevents 
> C++/CLI code from building against it.
> From a C++/CLI project:
> #include 
> ...
> "#error directive:  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  publically.



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


[jira] [Commented] (ARROW-1134) [C++] Allow C++/CLI projects to build with Arrow​

2017-10-24 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on ARROW-1134:
---

wesm commented on issue #1228: ARROW-1134: [C++] Support for C++/CLI 
compilation, add NULLPTR define to avoid using nullptr in public headers
URL: https://github.com/apache/arrow/pull/1228#issuecomment-339159697
 
 
   @xhochy @cpcloud I would suggest we should merge this and wait for more 
feedback from C++/CLI users


This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> [C++] 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
>Assignee: Wes McKinney
>Priority: Minor
>  Labels: pull-request-available
> Fix For: 0.8.0
>
>
> Currently, the inclusion of  in some of Arrow's C++ headers prevents 
> C++/CLI code from building against it.
> From a C++/CLI project:
> #include 
> ...
> "#error directive:  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  publically.



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


[jira] [Commented] (ARROW-1134) [C++] Allow C++/CLI projects to build with Arrow​

2017-10-23 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on ARROW-1134:
---

wesm commented on issue #1228: ARROW-1134: [C++] Support for C++/CLI 
compilation, add NULLPTR define to avoid using nullptr in public headers
URL: https://github.com/apache/arrow/pull/1228#issuecomment-338773816
 
 
   We should probably have some kind of linting script to check that nullptr or 
`` does not creep into a public header. I could write some kind of 
Python script for this if 


This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> [C++] 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
>Assignee: Wes McKinney
>Priority: Minor
>  Labels: pull-request-available
> Fix For: 0.8.0
>
>
> Currently, the inclusion of  in some of Arrow's C++ headers prevents 
> C++/CLI code from building against it.
> From a C++/CLI project:
> #include 
> ...
> "#error directive:  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  publically.



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


[jira] [Commented] (ARROW-1134) [C++] Allow C++/CLI projects to build with Arrow​

2017-10-23 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on ARROW-1134:
---

wesm commented on issue #1228: ARROW-1134: [C++] Support for C++/CLI 
compilation, add NULLPTR define to avoid using nullptr in public headers
URL: https://github.com/apache/arrow/pull/1228#issuecomment-338773816
 
 
   We should probably have some kind of linting script to check that nullptr or 
`` does not creep into a public header. I could write some kind of 
Python script for this 


This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> [C++] 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
>Assignee: Wes McKinney
>Priority: Minor
>  Labels: pull-request-available
> Fix For: 0.8.0
>
>
> Currently, the inclusion of  in some of Arrow's C++ headers prevents 
> C++/CLI code from building against it.
> From a C++/CLI project:
> #include 
> ...
> "#error directive:  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  publically.



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


[jira] [Commented] (ARROW-1134) [C++] Allow C++/CLI projects to build with Arrow​

2017-10-22 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on ARROW-1134:
---

wesm commented on issue #1098: ARROW-1134 - Allow C++/CLI projects to build 
with Arrow
URL: https://github.com/apache/arrow/pull/1098#issuecomment-338530966
 
 
   superseded by #1228 


This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> [C++] 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
>Assignee: Wes McKinney
>Priority: Minor
>  Labels: pull-request-available
> Fix For: 0.8.0
>
>
> Currently, the inclusion of  in some of Arrow's C++ headers prevents 
> C++/CLI code from building against it.
> From a C++/CLI project:
> #include 
> ...
> "#error directive:  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  publically.



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


[jira] [Commented] (ARROW-1134) [C++] Allow C++/CLI projects to build with Arrow​

2017-10-20 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on ARROW-1134:
---

GitHub user wesm opened a pull request:

https://github.com/apache/arrow/pull/1228

ARROW-1134: [C++] Support for C++/CLI compilation, add NULLPTR define to 
avoid using nullptr in public headers

cc @tobyshaw. Can you test this?

Close #1098

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/wesm/arrow ARROW-1134

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/arrow/pull/1228.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #1228


commit 4b4ca46ad0cdad4ca5aa804a9cd309c540059c0b
Author: Wes McKinney 
Date:   2017-10-21T01:48:33Z

Add NULLPTR macro to avoid using nullptr in public headers for C++/CLI users

Change-Id: Id8ef2be3f293a5fbb1cc6e5b792b25b9391bcf6b




> [C++] 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
>  Labels: pull-request-available
> Fix For: 0.8.0
>
>
> Currently, the inclusion of  in some of Arrow's C++ headers prevents 
> C++/CLI code from building against it.
> From a C++/CLI project:
> #include 
> ...
> "#error directive:  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  publically.



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


[jira] [Commented] (ARROW-1134) [C++] Allow C++/CLI projects to build with Arrow​

2017-10-04 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on ARROW-1134:
---

Github user TobyShaw commented on the issue:

https://github.com/apache/arrow/pull/1098
  
My compiler complained about redefining a keyword when I tried that.


> [C++] 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
>  Labels: pull-request-available
> Fix For: 0.8.0
>
>
> Currently, the inclusion of  in some of Arrow's C++ headers prevents 
> C++/CLI code from building against it.
> From a C++/CLI project:
> #include 
> ...
> "#error directive:  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  publically.



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


[jira] [Commented] (ARROW-1134) [C++] Allow C++/CLI projects to build with Arrow​

2017-10-04 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on ARROW-1134:
---

Github user wesm commented on the issue:

https://github.com/apache/arrow/pull/1098
  
Would

```
#ifdef __cplusplus_cli
#define nullptr __nullptr
#endif
```

work also? 


> [C++] 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
>  Labels: pull-request-available
> Fix For: 0.8.0
>
>
> Currently, the inclusion of  in some of Arrow's C++ headers prevents 
> C++/CLI code from building against it.
> From a C++/CLI project:
> #include 
> ...
> "#error directive:  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  publically.



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


[jira] [Commented] (ARROW-1134) [C++] Allow C++/CLI projects to build with Arrow​

2017-10-04 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on ARROW-1134:
---

Github user TobyShaw commented on the issue:

https://github.com/apache/arrow/pull/1098
  
Eek, sorry about the inactivity.

As for the nullptr stuff, the solution I've tested is with macros

```
#ifdef __cplusplus_cli
#define NULLPTR __nullptr
#else
#define NULLPTR nullptr
#endif
```
And using NULLPTR instead of nullptr.


> [C++] 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
>  Labels: pull-request-available
> Fix For: 0.8.0
>
>
> Currently, the inclusion of  in some of Arrow's C++ headers prevents 
> C++/CLI code from building against it.
> From a C++/CLI project:
> #include 
> ...
> "#error directive:  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  publically.



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


[jira] [Commented] (ARROW-1134) [C++] Allow C++/CLI projects to build with Arrow​

2017-10-04 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on ARROW-1134:
---

Github user wesm commented on the issue:

https://github.com/apache/arrow/pull/1098
  
See ARROW-1641. I will put up a patch for this soon as I can


> [C++] 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
>  Labels: pull-request-available
> Fix For: 0.8.0
>
>
> Currently, the inclusion of  in some of Arrow's C++ headers prevents 
> C++/CLI code from building against it.
> From a C++/CLI project:
> #include 
> ...
> "#error directive:  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  publically.



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


[jira] [Commented] (ARROW-1134) [C++] Allow C++/CLI projects to build with Arrow​

2017-10-04 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on ARROW-1134:
---

Github user wesm commented on the issue:

https://github.com/apache/arrow/pull/1098
  
I think I'm going to extract this mutex PIMPL-ization into a separate patch 
so this need not linger too long, and we can deal with nullptr in another patch


> [C++] 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
>  Labels: pull-request-available
> Fix For: 0.8.0
>
>
> Currently, the inclusion of  in some of Arrow's C++ headers prevents 
> C++/CLI code from building against it.
> From a C++/CLI project:
> #include 
> ...
> "#error directive:  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  publically.



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


[jira] [Commented] (ARROW-1134) [C++] Allow C++/CLI projects to build with Arrow​

2017-10-01 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on ARROW-1134:
---

Github user wesm commented on the issue:

https://github.com/apache/arrow/pull/1098
  
I've got all the mutexes excluded from public headers. What is the 
prescribed solution for `nullptr`?


> [C++] 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
>  Labels: pull-request-available
> Fix For: 0.8.0
>
>
> Currently, the inclusion of  in some of Arrow's C++ headers prevents 
> C++/CLI code from building against it.
> From a C++/CLI project:
> #include 
> ...
> "#error directive:  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  publically.



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


[jira] [Commented] (ARROW-1134) [C++] Allow C++/CLI projects to build with Arrow​

2017-09-13 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on ARROW-1134:
---

Github user TobyShaw commented on the issue:

https://github.com/apache/arrow/pull/1098
  
Sure thing, added.


> [C++] 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
>  Labels: pull-request-available
>
> Currently, the inclusion of  in some of Arrow's C++ headers prevents 
> C++/CLI code from building against it.
> From a C++/CLI project:
> #include 
> ...
> "#error directive:  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  publically.



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


[jira] [Commented] (ARROW-1134) [C++] Allow C++/CLI projects to build with Arrow​

2017-09-13 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on ARROW-1134:
---

Github user wesm commented on the issue:

https://github.com/apache/arrow/pull/1098
  
I'm happy to help you with this, I will let you work for a bit, but if you 
add me as a collaborator on your fork I can do some work on e.g. hiding mutex


> [C++] 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
>  Labels: pull-request-available
>
> Currently, the inclusion of  in some of Arrow's C++ headers prevents 
> C++/CLI code from building against it.
> From a C++/CLI project:
> #include 
> ...
> "#error directive:  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  publically.



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


[jira] [Commented] (ARROW-1134) [C++] Allow C++/CLI projects to build with Arrow​

2017-09-13 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on ARROW-1134:
---

GitHub user TobyShaw opened a pull request:

https://github.com/apache/arrow/pull/1098

ARROW-1134 - Allow C++/CLI projects to build with Arrow

I'm going to attempt a few things:

In public headers:
Hide mutexes through pimpl pattern.
Replace nullptr with __nullptr when building in C++/CLI mode.



You can merge this pull request into a Git repository by running:

$ git pull https://github.com/TobyShaw/arrow master

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/arrow/pull/1098.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #1098


commit d8cb1f676452af940bbc963c43ab3c5809d85459
Author: labuser 
Date:   2017-09-13T10:34:21Z

Attempt PImpl on FixedSizeBufferWriter

commit d1903d7aa768a27e304c3f00d59cb725dfddf0f2
Author: labuser 
Date:   2017-09-13T10:35:29Z

remove mutex include




> [C++] 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
>  Labels: pull-request-available
>
> Currently, the inclusion of  in some of Arrow's C++ headers prevents 
> C++/CLI code from building against it.
> From a C++/CLI project:
> #include 
> ...
> "#error directive:  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  publically.



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


[jira] [Commented] (ARROW-1134) [C++] Allow C++/CLI projects to build with Arrow​

2017-09-13 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on ARROW-1134:
---

Github user TobyShaw commented on the issue:

https://github.com/apache/arrow/pull/1098
  
Work-in-progress.


> [C++] 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
>  Labels: pull-request-available
>
> Currently, the inclusion of  in some of Arrow's C++ headers prevents 
> C++/CLI code from building against it.
> From a C++/CLI project:
> #include 
> ...
> "#error directive:  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  publically.



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


[jira] [Commented] (ARROW-1134) [C++] Allow C++/CLI projects to build with Arrow​

2017-07-17 Thread Wes McKinney (JIRA)

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

Wes McKinney commented on ARROW-1134:
-

[~tobyshaw] marked for 0.6.0. Would you be able to submit a patch? 

> [C++] 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
> Fix For: 0.6.0
>
>
> Currently, the inclusion of  in some of Arrow's C++ headers prevents 
> C++/CLI code from building against it.
> From a C++/CLI project:
> #include 
> ...
> "#error directive:  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  publically.



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