Skip to content

Solve segmentation fault of dash::transform on unkown types #212

@ddiefenthaler

Description

@ddiefenthaler

As stated by #203 dash::transform fails at runtime when operating on a type not defined in Types.h.

A suggestion was to move this error to compile time. This could be done by removing the member value from the struct dart_datatype<T> without specialization.
Unfortunaly this does not work this easy as this also fails in other situations. For example each use of GlobRef<T> depends on dart_datatype<T>.
Since DART_TYPE_UNDEFINED works fine in these different contexts, it does not seem to be the actual problem.

A possible solution could be to duplicate the member value for all specializations, but not for the base case. This could be called value_strong for example.
This duplicate could then get used in all the places where it is important that DART knows about the specific type.

Metadata

Metadata

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions