Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

libjulia: add jl_unwrap_unionall to exported_funcs #51916

Merged
merged 1 commit into from
Oct 28, 2023

Conversation

benlorenz
Copy link
Contributor

This was recently refactored in #51319 and while trying to adapt libcxxwrap-julia to the new changes I got:

ld: CMakeFiles/test_module.dir/test_module.cpp.o: in function `jl_datatype_layout':
test_module.cpp:(.text+0x2c2): undefined reference to `jl_unwrap_unionall'

The function jl_datatype_layout is STATIC_INLINE in julia.h:

julia/src/julia.h

Lines 1304 to 1312 in 98542d7

JL_DLLEXPORT jl_value_t *jl_unwrap_unionall(jl_value_t *v JL_PROPAGATES_ROOT) JL_NOTSAFEPOINT;
#define jl_inlinedatatype_layout(t) (((jl_datatype_t*)t)->layout)
STATIC_INLINE const jl_datatype_layout_t *jl_datatype_layout(jl_datatype_t *t) JL_NOTSAFEPOINT
{
if (jl_is_layout_opaque(t->layout)) // e.g. GenericMemory
t = (jl_datatype_t*)jl_unwrap_unionall(t->name->wrapper);
return t->layout;
}

jl_unwrap_unionall is marked JL_DLLEXPORT here but it doesn't appear in the exports of libjulia.

@vchuravy vchuravy merged commit ab1eec5 into JuliaLang:master Oct 28, 2023
7 checks passed
@benlorenz benlorenz deleted the bl/unwrapunionall branch October 28, 2023 22:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants