Codegen error when running on newer cimplot #440
-
So I'm shaving all the yaks to update the ImPlot/ImGui/ImNodes wrappers, and I'm running into this error when running the generator on the header for cimplot: julia> include("generator.jl")
[ Info: processing x86_64-linux-gnu
[ Info: Found dependent header: /home/james/.julia/artifacts/fe48f0b2aafb29660aa25ab0e55249169fabee58/include/cimgui.h
[ Info: Parsing headers...
[ Info: Processing header: /home/james/.julia/artifacts/fe48f0b2aafb29660aa25ab0e55249169fabee58/include/cimplot.h
[ Info: Building the DAG...
┌ Warning: [CollectDependentSystemNode]: found symbols in the system headers: [:tm, :__time_t, :time_t]
└ @ Clang.Generators ~/git/Clang/src/generator/passes.jl:95
[ Info: Emit Julia expressions...
ERROR: LoadError: AssertionError: is_jl_pointer(jlty)
Stacktrace:
[1] emit!(dag::ExprDAG, node::ExprNode{Clang.Generators.StructMutualRef, Clang.CLStructDecl}, options::Dict{String, Any}; args::@Kwargs{idx::Int64})
@ Clang.Generators ~/git/Clang/src/generator/codegen.jl:546
[2] (::Codegen)(dag::ExprDAG, options::Dict{String, Any})
@ Clang.Generators ~/git/Clang/src/generator/passes.jl:734
[3] build!(ctx::Context, stage::Clang.Generators.BuildStage)
@ Clang.Generators ~/git/Clang/src/generator/context.jl:176
[4] build!
@ ~/git/Clang/src/generator/context.jl:167 [inlined]
[5] top-level scope
@ ~/git/LibCImGui/gen/generator.jl:31
[6] include(fname::String)
@ Base.MainInclude ./client.jl:489
[7] top-level scope
@ REPL[15]:1
in expression starting at /home/james/git/LibCImGui/gen/generator.jl:20 To reproduce:
For convenience, here's the header it's running on: https://gist.github.com/JamesWrigley/4d1d071b8532b359df112428eb4062d3 And this point I got totally confused and thought I should ask for help 😅 Has anyone got any ideas about what's happening here? |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments
-
Hmm, after more investigation it seems that |
Beta Was this translation helpful? Give feedback.
-
Turned out to be because of the |
Beta Was this translation helpful? Give feedback.
Turned out to be because of the
RemoveCircularReference
pass being too aggressive: #441.