kou commented on code in PR #33847:
URL: https://github.com/apache/arrow/pull/33847#discussion_r1087389699
##########
cpp/src/arrow/type.h:
##########
@@ -288,31 +288,46 @@ std::shared_ptr<DataType> GetPhysicalType(const
std::shared_ptr<DataType>& type)
class ARROW_EXPORT FixedWidthType : public DataType {
public:
using DataType::DataType;
+ // This is only for preventing defining this class in each
+ // translation unit to avoid one-definition-rule violation.
+ ~FixedWidthType() override;
Review Comment:
It's just a try and error...
There are some abstract classes for `arrow::DataType` family. Most of them
are in error messages but `arrow::DataType` isn't shown. I noticed that
`arrow::DataType` is `U` and others are `W` in `nm --demangle` result. I found
that `arrow::DataType::~DataType()` is defined in `type.cc` but other abstract
classes don't define their destructors. So I tried to define them.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]