-
Notifications
You must be signed in to change notification settings - Fork 53
Closed
Description
At some point, tools::package_native_routine_registration_skeleton() changed the generated prototypes to void * from SEXP . I couldn't find a NEWS entry.
This has implications when the function's definition lives in a C++ file with extern "C" and uses SEXP, and (apparently) SEXP means something other than void * in that translation unit. My igraph 2.0.0 release came back with an LTO error (-Wodr) because of this mismatch, fixed with igraph/rigraph@9dc6ba4.
I agree that this is a corner case of a corner case, and the solution is simple. I'm still confused why the change to void * happened. I wonder if maybe cpp11 should do something about it, and again, the answer is likely "no".
Metadata
Metadata
Assignees
Labels
No labels