vlang / ui

A cross-platform UI library written in V

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ld: symbol(s) not found for architecture x86_64

avioli opened this issue · comments

V version: V 0.2.1 e219f95
UI version: 0.0.4 (from ~/.vmodules/ui.v)
OS: macOS Mojave - 10.14.6 (18G7016)

What did you do?
Run v run users.v

What did you expect to see?
To see some UI.

What did you see instead?

~/repos/v-ui/examples ▶ v run users.v 
==================
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
...
==================
(Use `v -cg` to print the entire error message)

builder error: 
==================
C error. This should never happen.

If you were not working with C interop, please raise an issue on GitHub:

https://github.com/vlang/v/issues/new/choose

You can also use #help on Discord: https://discord.gg/vlang

--

Tried running v -v users.v:

output
builder.compile() pref:
all .v files before:
v.pref.lookup_path: ['/Users/avioli/repos/v/vlib', '/Users/avioli/.vmodules']
v_files_from_dir ("/Users/avioli/repos/v/vlib/builtin")
>>> should_compile_filtered_files: res: ['/Users/avioli/repos/v/vlib/builtin/array.v', '/Users/avioli/repos/v/vlib/builtin/builtin.c.v', '/Users/avioli/repos/v/vlib/builtin/builtin.v', '/Users/avioli/repos/v/vlib/builtin/builtin_nix.c.v', '/Users/avioli/repos/v/vlib/builtin/cfns.c.v', '/Users/avioli/repos/v/vlib/builtin/chan.v', '/Users/avioli/repos/v/vlib/builtin/float.v', '/Users/avioli/repos/v/vlib/builtin/int.v', '/Users/avioli/repos/v/vlib/builtin/map.v', '/Users/avioli/repos/v/vlib/builtin/option.v', '/Users/avioli/repos/v/vlib/builtin/rune.v', '/Users/avioli/repos/v/vlib/builtin/sorted_map.v', '/Users/avioli/repos/v/vlib/builtin/string.v', '/Users/avioli/repos/v/vlib/builtin/utf8.c.v', '/Users/avioli/repos/v/vlib/builtin/utf8.v']
get_v_files(users.v)
> just compile one file: "users.v"
user_files: ['users.v']
x: "/Users/avioli/repos/v-ui/examples/modules"
v.module_search_paths:
['/Users/avioli/repos/v-ui/examples', '/Users/avioli/repos/v-ui/examples/modules', '/Users/avioli/repos/v/vlib', '/Users/avioli/.vmodules']
all .v files:
['/Users/avioli/repos/v/vlib/builtin/array.v', '/Users/avioli/repos/v/vlib/builtin/builtin.c.v', '/Users/avioli/repos/v/vlib/builtin/builtin.v', '/Users/avioli/repos/v/vlib/builtin/builtin_nix.c.v', '/Users/avioli/repos/v/vlib/builtin/cfns.c.v', '/Users/avioli/repos/v/vlib/builtin/chan.v', '/Users/avioli/repos/v/vlib/builtin/float.v', '/Users/avioli/repos/v/vlib/builtin/int.v', '/Users/avioli/repos/v/vlib/builtin/map.v', '/Users/avioli/repos/v/vlib/builtin/option.v', '/Users/avioli/repos/v/vlib/builtin/rune.v', '/Users/avioli/repos/v/vlib/builtin/sorted_map.v', '/Users/avioli/repos/v/vlib/builtin/string.v', '/Users/avioli/repos/v/vlib/builtin/utf8.c.v', '/Users/avioli/repos/v/vlib/builtin/utf8.v', 'users.v']
build_c(/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.16429853518114588792.tmp.c)
  >> trying to find strings in /Users/avioli/repos/v/strings ..
  >> trying to find strings in /Users/avioli/repos/v-ui/examples/strings ..
  >> trying to find strings in /Users/avioli/repos/v-ui/examples/modules/strings ..
  >> trying to find strings in /Users/avioli/repos/v/vlib/strings ..
  << found /Users/avioli/repos/v/vlib/strings .
v_files_from_dir ("/Users/avioli/repos/v/vlib/strings")
>>> should_compile_filtered_files: res: ['/Users/avioli/repos/v/vlib/strings/builder.v', '/Users/avioli/repos/v/vlib/strings/similarity.v', '/Users/avioli/repos/v/vlib/strings/strings.c.v', '/Users/avioli/repos/v/vlib/strings/strings.v']
  >> trying to find strconv in /Users/avioli/repos/v/strconv ..
  >> trying to find strconv in /Users/avioli/repos/v-ui/examples/strconv ..
  >> trying to find strconv in /Users/avioli/repos/v-ui/examples/modules/strconv ..
  >> trying to find strconv in /Users/avioli/repos/v/vlib/strconv ..
  << found /Users/avioli/repos/v/vlib/strconv .
v_files_from_dir ("/Users/avioli/repos/v/vlib/strconv")
>>> should_compile_filtered_files: res: ['/Users/avioli/repos/v/vlib/strconv/atof.v', '/Users/avioli/repos/v/vlib/strconv/atofq.v', '/Users/avioli/repos/v/vlib/strconv/atoi.v', '/Users/avioli/repos/v/vlib/strconv/f32_str.v', '/Users/avioli/repos/v/vlib/strconv/f64_str.v', '/Users/avioli/repos/v/vlib/strconv/format.v', '/Users/avioli/repos/v/vlib/strconv/ftoa.v', '/Users/avioli/repos/v/vlib/strconv/number_to_base.v', '/Users/avioli/repos/v/vlib/strconv/structs.v', '/Users/avioli/repos/v/vlib/strconv/tables.v', '/Users/avioli/repos/v/vlib/strconv/utilities.v']
  >> trying to find hash in /Users/avioli/repos/v/hash ..
  >> trying to find hash in /Users/avioli/repos/v-ui/examples/hash ..
  >> trying to find hash in /Users/avioli/repos/v-ui/examples/modules/hash ..
  >> trying to find hash in /Users/avioli/repos/v/vlib/hash ..
  << found /Users/avioli/repos/v/vlib/hash .
v_files_from_dir ("/Users/avioli/repos/v/vlib/hash")
>>> should_compile_filtered_files: res: ['/Users/avioli/repos/v/vlib/hash/hash.v', '/Users/avioli/repos/v/vlib/hash/wyhash.c.v', '/Users/avioli/repos/v/vlib/hash/wyhash.v']
  >> trying to find ui in /Users/avioli/repos/v-ui/ui ..
  >> trying to find ui in /Users/avioli/repos/v-ui/examples/ui ..
  >> trying to find ui in /Users/avioli/repos/v-ui/examples/modules/ui ..
  >> trying to find ui in /Users/avioli/repos/v/vlib/ui ..
  >> trying to find ui in /Users/avioli/.vmodules/ui ..
  << found /Users/avioli/.vmodules/ui .
v_files_from_dir ("/Users/avioli/.vmodules/ui")
>>> should_compile_filtered_files: res: ['/Users/avioli/.vmodules/ui/button.v', '/Users/avioli/.vmodules/ui/canvas.v', '/Users/avioli/.vmodules/ui/checkbox.v', '/Users/avioli/.vmodules/ui/column.v', '/Users/avioli/.vmodules/ui/const.v', '/Users/avioli/.vmodules/ui/dropdown.v', '/Users/avioli/.vmodules/ui/easing.v', '/Users/avioli/.vmodules/ui/group.v', '/Users/avioli/.vmodules/ui/key.v', '/Users/avioli/.vmodules/ui/label.v', '/Users/avioli/.vmodules/ui/listbox.v', '/Users/avioli/.vmodules/ui/menu.v', '/Users/avioli/.vmodules/ui/picture.v', '/Users/avioli/.vmodules/ui/pngs.v', '/Users/avioli/.vmodules/ui/progressbar.v', '/Users/avioli/.vmodules/ui/radio.v', '/Users/avioli/.vmodules/ui/rectangle.v', '/Users/avioli/.vmodules/ui/row.v', '/Users/avioli/.vmodules/ui/slider.v', '/Users/avioli/.vmodules/ui/stack.v', '/Users/avioli/.vmodules/ui/switch.v', '/Users/avioli/.vmodules/ui/textbox.v', '/Users/avioli/.vmodules/ui/transition.v', '/Users/avioli/.vmodules/ui/ui.v', '/Users/avioli/.vmodules/ui/ui_darwin.c.v', '/Users/avioli/.vmodules/ui/window.v']
  >> trying to find gg in /Users/avioli/repos/v-ui/gg ..
  >> trying to find gg in /Users/avioli/repos/v-ui/examples/gg ..
  >> trying to find gg in /Users/avioli/repos/v-ui/examples/modules/gg ..
  >> trying to find gg in /Users/avioli/repos/v/vlib/gg ..
  << found /Users/avioli/repos/v/vlib/gg .
v_files_from_dir ("/Users/avioli/repos/v/vlib/gg")
>>> should_compile_filtered_files: res: ['/Users/avioli/repos/v/vlib/gg/gg.v', '/Users/avioli/repos/v/vlib/gg/gg_darwin.c.v', '/Users/avioli/repos/v/vlib/gg/image.v', '/Users/avioli/repos/v/vlib/gg/text_rendering.v']
  >> trying to find gx in /Users/avioli/repos/v-ui/gx ..
  >> trying to find gx in /Users/avioli/repos/v-ui/examples/gx ..
  >> trying to find gx in /Users/avioli/repos/v-ui/examples/modules/gx ..
  >> trying to find gx in /Users/avioli/repos/v/vlib/gx ..
  << found /Users/avioli/repos/v/vlib/gx .
v_files_from_dir ("/Users/avioli/repos/v/vlib/gx")
>>> should_compile_filtered_files: res: ['/Users/avioli/repos/v/vlib/gx/color.v', '/Users/avioli/repos/v/vlib/gx/image.v', '/Users/avioli/repos/v/vlib/gx/text.v']
  >> trying to find os in /Users/avioli/repos/v-ui/os ..
  >> trying to find os in /Users/avioli/repos/v-ui/examples/os ..
  >> trying to find os in /Users/avioli/repos/v-ui/examples/modules/os ..
  >> trying to find os in /Users/avioli/repos/v/vlib/os ..
  << found /Users/avioli/repos/v/vlib/os .
v_files_from_dir ("/Users/avioli/repos/v/vlib/os")
>>> should_compile_filtered_files: res: ['/Users/avioli/repos/v/vlib/os/args.v', '/Users/avioli/repos/v/vlib/os/const.v', '/Users/avioli/repos/v/vlib/os/const_nix.c.v', '/Users/avioli/repos/v/vlib/os/environment.c.v', '/Users/avioli/repos/v/vlib/os/fd.c.v', '/Users/avioli/repos/v/vlib/os/file.c.v', '/Users/avioli/repos/v/vlib/os/inode.c.v', '/Users/avioli/repos/v/vlib/os/os.v', '/Users/avioli/repos/v/vlib/os/os_c.v', '/Users/avioli/repos/v/vlib/os/os_darwin.c.v', '/Users/avioli/repos/v/vlib/os/os_nix.c.v', '/Users/avioli/repos/v/vlib/os/process.v', '/Users/avioli/repos/v/vlib/os/process_nix.c.v']
  >> trying to find math.bits in /Users/avioli/repos/v/math/bits ..
  >> trying to find math.bits in /Users/avioli/repos/v-ui/examples/math/bits ..
  >> trying to find math.bits in /Users/avioli/repos/v-ui/examples/modules/math/bits ..
  >> trying to find math.bits in /Users/avioli/repos/v/vlib/math/bits ..
  << found /Users/avioli/repos/v/vlib/math/bits .
v_files_from_dir ("/Users/avioli/repos/v/vlib/math/bits")
>>> should_compile_filtered_files: res: ['/Users/avioli/repos/v/vlib/math/bits/bits.v', '/Users/avioli/repos/v/vlib/math/bits/bits_tables.v']
  >> trying to find math in /Users/avioli/.vmodules/ui/math ..
  >> trying to find math in /Users/avioli/repos/v-ui/examples/math ..
  >> trying to find math in /Users/avioli/repos/v-ui/examples/modules/math ..
  >> trying to find math in /Users/avioli/repos/v/vlib/math ..
  << found /Users/avioli/repos/v/vlib/math .
v_files_from_dir ("/Users/avioli/repos/v/vlib/math")
>>> should_compile_filtered_files: res: ['/Users/avioli/repos/v/vlib/math/bits.v', '/Users/avioli/repos/v/vlib/math/const.v', '/Users/avioli/repos/v/vlib/math/math.c.v', '/Users/avioli/repos/v/vlib/math/math.v', '/Users/avioli/repos/v/vlib/math/unsafe.v']
  >> trying to find eventbus in /Users/avioli/.vmodules/ui/eventbus ..
  >> trying to find eventbus in /Users/avioli/repos/v-ui/examples/eventbus ..
  >> trying to find eventbus in /Users/avioli/repos/v-ui/examples/modules/eventbus ..
  >> trying to find eventbus in /Users/avioli/repos/v/vlib/eventbus ..
  << found /Users/avioli/repos/v/vlib/eventbus .
v_files_from_dir ("/Users/avioli/repos/v/vlib/eventbus")
>>> should_compile_filtered_files: res: ['/Users/avioli/repos/v/vlib/eventbus/eventbus.v']
  >> trying to find time in /Users/avioli/.vmodules/ui/time ..
  >> trying to find time in /Users/avioli/repos/v-ui/examples/time ..
  >> trying to find time in /Users/avioli/repos/v-ui/examples/modules/time ..
  >> trying to find time in /Users/avioli/repos/v/vlib/time ..
  << found /Users/avioli/repos/v/vlib/time .
v_files_from_dir ("/Users/avioli/repos/v/vlib/time")
>>> should_compile_filtered_files: res: ['/Users/avioli/repos/v/vlib/time/format.v', '/Users/avioli/repos/v/vlib/time/operator.v', '/Users/avioli/repos/v/vlib/time/parse.v', '/Users/avioli/repos/v/vlib/time/stopwatch.v', '/Users/avioli/repos/v/vlib/time/time.v', '/Users/avioli/repos/v/vlib/time/time_darwin.c.v', '/Users/avioli/repos/v/vlib/time/time_nix.c.v', '/Users/avioli/repos/v/vlib/time/unix.v']
  >> trying to find clipboard in /Users/avioli/.vmodules/ui/clipboard ..
  >> trying to find clipboard in /Users/avioli/repos/v-ui/examples/clipboard ..
  >> trying to find clipboard in /Users/avioli/repos/v-ui/examples/modules/clipboard ..
  >> trying to find clipboard in /Users/avioli/repos/v/vlib/clipboard ..
  << found /Users/avioli/repos/v/vlib/clipboard .
v_files_from_dir ("/Users/avioli/repos/v/vlib/clipboard")
>>> should_compile_filtered_files: skipping _default.c.v file /Users/avioli/repos/v/vlib/clipboard/clipboard_default.c.v ; the specialized versions are: ['/Users/avioli/repos/v/vlib/clipboard/clipboard_darwin.c.v']
>>> should_compile_filtered_files: res: ['/Users/avioli/repos/v/vlib/clipboard/clipboard.v', '/Users/avioli/repos/v/vlib/clipboard/clipboard_darwin.c.v']
  >> trying to find sokol.sapp in /Users/avioli/.vmodules/ui/sokol/sapp ..
  >> trying to find sokol.sapp in /Users/avioli/repos/v-ui/examples/sokol/sapp ..
  >> trying to find sokol.sapp in /Users/avioli/repos/v-ui/examples/modules/sokol/sapp ..
  >> trying to find sokol.sapp in /Users/avioli/repos/v/vlib/sokol/sapp ..
  << found /Users/avioli/repos/v/vlib/sokol/sapp .
v_files_from_dir ("/Users/avioli/repos/v/vlib/sokol/sapp")
>>> should_compile_filtered_files: res: ['/Users/avioli/repos/v/vlib/sokol/sapp/enums.v', '/Users/avioli/repos/v/vlib/sokol/sapp/sapp.v', '/Users/avioli/repos/v/vlib/sokol/sapp/sapp_funcs.v', '/Users/avioli/repos/v/vlib/sokol/sapp/sapp_structs.v']
  >> trying to find sokol in /Users/avioli/repos/v/sokol ..
  >> trying to find sokol in /Users/avioli/repos/v-ui/examples/sokol ..
  >> trying to find sokol in /Users/avioli/repos/v-ui/examples/modules/sokol ..
  >> trying to find sokol in /Users/avioli/repos/v/vlib/sokol ..
  << found /Users/avioli/repos/v/vlib/sokol .
v_files_from_dir ("/Users/avioli/repos/v/vlib/sokol")
>>> should_compile_filtered_files: res: ['/Users/avioli/repos/v/vlib/sokol/sokol.v']
  >> trying to find sokol.sgl in /Users/avioli/repos/v/sokol/sgl ..
  >> trying to find sokol.sgl in /Users/avioli/repos/v-ui/examples/sokol/sgl ..
  >> trying to find sokol.sgl in /Users/avioli/repos/v-ui/examples/modules/sokol/sgl ..
  >> trying to find sokol.sgl in /Users/avioli/repos/v/vlib/sokol/sgl ..
  << found /Users/avioli/repos/v/vlib/sokol/sgl .
v_files_from_dir ("/Users/avioli/repos/v/vlib/sokol/sgl")
>>> should_compile_filtered_files: res: ['/Users/avioli/repos/v/vlib/sokol/sgl/sgl.v', '/Users/avioli/repos/v/vlib/sokol/sgl/sgl_funcs.v', '/Users/avioli/repos/v/vlib/sokol/sgl/sgl_structs.v']
  >> trying to find sokol.gfx in /Users/avioli/repos/v/sokol/gfx ..
  >> trying to find sokol.gfx in /Users/avioli/repos/v-ui/examples/sokol/gfx ..
  >> trying to find sokol.gfx in /Users/avioli/repos/v-ui/examples/modules/sokol/gfx ..
  >> trying to find sokol.gfx in /Users/avioli/repos/v/vlib/sokol/gfx ..
  << found /Users/avioli/repos/v/vlib/sokol/gfx .
v_files_from_dir ("/Users/avioli/repos/v/vlib/sokol/gfx")
>>> should_compile_filtered_files: res: ['/Users/avioli/repos/v/vlib/sokol/gfx/enums.v', '/Users/avioli/repos/v/vlib/sokol/gfx/gfx.v', '/Users/avioli/repos/v/vlib/sokol/gfx/gfx_funcs.v', '/Users/avioli/repos/v/vlib/sokol/gfx/gfx_structs.v', '/Users/avioli/repos/v/vlib/sokol/gfx/gfx_utils.v']
  >> trying to find stbi in /Users/avioli/repos/v/stbi ..
  >> trying to find stbi in /Users/avioli/repos/v-ui/examples/stbi ..
  >> trying to find stbi in /Users/avioli/repos/v-ui/examples/modules/stbi ..
  >> trying to find stbi in /Users/avioli/repos/v/vlib/stbi ..
  << found /Users/avioli/repos/v/vlib/stbi .
v_files_from_dir ("/Users/avioli/repos/v/vlib/stbi")
>>> should_compile_filtered_files: res: ['/Users/avioli/repos/v/vlib/stbi/stbi.v']
  >> trying to find sokol.sfons in /Users/avioli/repos/v/sokol/sfons ..
  >> trying to find sokol.sfons in /Users/avioli/repos/v-ui/examples/sokol/sfons ..
  >> trying to find sokol.sfons in /Users/avioli/repos/v-ui/examples/modules/sokol/sfons ..
  >> trying to find sokol.sfons in /Users/avioli/repos/v/vlib/sokol/sfons ..
  << found /Users/avioli/repos/v/vlib/sokol/sfons .
v_files_from_dir ("/Users/avioli/repos/v/vlib/sokol/sfons")
>>> should_compile_filtered_files: res: ['/Users/avioli/repos/v/vlib/sokol/sfons/sfons.v', '/Users/avioli/repos/v/vlib/sokol/sfons/sfons_funcs.v']
  >> trying to find fontstash in /Users/avioli/repos/v/fontstash ..
  >> trying to find fontstash in /Users/avioli/repos/v-ui/examples/fontstash ..
  >> trying to find fontstash in /Users/avioli/repos/v-ui/examples/modules/fontstash ..
  >> trying to find fontstash in /Users/avioli/repos/v/vlib/fontstash ..
  << found /Users/avioli/repos/v/vlib/fontstash .
v_files_from_dir ("/Users/avioli/repos/v/vlib/fontstash")
>>> should_compile_filtered_files: res: ['/Users/avioli/repos/v/vlib/fontstash/fontstash.v', '/Users/avioli/repos/v/vlib/fontstash/fontstash_funcs.v', '/Users/avioli/repos/v/vlib/fontstash/fontstash_structs.v']
  >> trying to find sokol.c in /Users/avioli/repos/v/sokol/c ..
  >> trying to find sokol.c in /Users/avioli/repos/v-ui/examples/sokol/c ..
  >> trying to find sokol.c in /Users/avioli/repos/v-ui/examples/modules/sokol/c ..
  >> trying to find sokol.c in /Users/avioli/repos/v/vlib/sokol/c ..
  << found /Users/avioli/repos/v/vlib/sokol/c .
v_files_from_dir ("/Users/avioli/repos/v/vlib/sokol/c")
>>> should_compile_filtered_files: res: ['/Users/avioli/repos/v/vlib/sokol/c/declaration.c.v']
  >> trying to find sokol.f in /Users/avioli/repos/v/sokol/f ..
  >> trying to find sokol.f in /Users/avioli/repos/v-ui/examples/sokol/f ..
  >> trying to find sokol.f in /Users/avioli/repos/v-ui/examples/modules/sokol/f ..
  >> trying to find sokol.f in /Users/avioli/repos/v/vlib/sokol/f ..
  << found /Users/avioli/repos/v/vlib/sokol/f .
v_files_from_dir ("/Users/avioli/repos/v/vlib/sokol/f")
>>> should_compile_filtered_files: res: ['/Users/avioli/repos/v/vlib/sokol/f/f.v']
`------ resolved dependencies graph: ------`

 * strconv -> strings
 * strconv -> math.bits
 * builtin -> strings
 * builtin -> strconv
 * builtin -> hash
 * os -> builtin
 * os -> strings
 * math -> builtin
 * eventbus -> builtin
 * time -> builtin
 * clipboard -> builtin
 * stbi -> builtin
 * fontstash -> builtin
 * sokol.c -> builtin
 * gx -> builtin
 * gx -> fontstash
 * sokol.gfx -> builtin
 * sokol.gfx -> sokol.c
 * sokol.sfons -> builtin
 * sokol.sfons -> fontstash
 * sokol.f -> builtin
 * sokol.f -> fontstash
 * sokol.f -> sokol.c
 * sokol.sapp -> builtin
 * sokol.sapp -> sokol.gfx
 * sokol -> builtin
 * sokol -> sokol.c
 * sokol -> sokol.f
 * sokol.sgl -> builtin
 * sokol.sgl -> sokol.gfx
 * gg -> builtin
 * gg -> os
 * gg -> gx
 * gg -> sokol
 * gg -> sokol.sapp
 * gg -> sokol.sgl
 * gg -> sokol.gfx
 * gg -> math
 * gg -> stbi
 * gg -> sokol.sfons
 * ui -> builtin
 * ui -> gx
 * ui -> gg
 * ui -> os
 * ui -> math
 * ui -> eventbus
 * ui -> strings
 * ui -> time
 * ui -> clipboard
 * ui -> sokol.sapp
 * main -> builtin
 * main -> ui
 * main -> gg
 * main -> gx
 * main -> os

`------------------------------------------`
`------ imported modules: ------`
['strings', 'hash', 'math.bits', 'strconv', 'builtin', 'os', 'math', 'eventbus', 'time', 'clipboard', 'stbi', 'fontstash', 'sokol.c', 'gx', 'sokol.gfx', 'sokol.sfons', 'sokol.f', 'sokol.sapp', 'sokol', 'sokol.sgl', 'gg', 'ui', 'main']
`-------------------------------`
252.101  ms PARSE
40.624   ms CHECK
83.690   ms C GEN
builder.cc() pref.out_name="/Users/avioli/repos/v-ui/examples/users"
build_thirdparty_obj_files: v.table.cflags: [CFlag{ name: "-framework" value: "Cocoa" mod: "clipboard" os: "" cached: "" }, CFlag{ name: "-I" value: "/Users/avioli/repos/v/thirdparty/stb_image" mod: "stbi" os: "" cached: "" }, CFlag{ name: "" value: "/Users/avioli/repos/v/thirdparty/stb_image/stbi.o" mod: "stbi" os: "" cached: "/Users/avioli/.vmodules/cache/27/277e232c4848705a97fd2c48f6edb69f.o" }, CFlag{ name: "-I" value: "/Users/avioli/repos/v/thirdparty/fontstash" mod: "fontstash" os: "" cached: "" }, CFlag{ name: "-I" value: "/Users/avioli/repos/v/thirdparty/sokol" mod: "sokol.c" os: "" cached: "" }, CFlag{ name: "-I" value: "/Users/avioli/repos/v/thirdparty/sokol/util" mod: "sokol.c" os: "" cached: "" }, CFlag{ name: "-I" value: "/usr/local/include" mod: "sokol.c" os: "freebsd" cached: "" }, CFlag{ name: "" value: "-fobjc-arc" mod: "sokol.c" os: "darwin" cached: "" }, CFlag{ name: "-l" value: "X11" mod: "sokol.c" os: "linux" cached: "" }, CFlag{ name: "-l" value: "GL" mod: "sokol.c" os: "linux" cached: "" }, CFlag{ name: "-l" value: "Xcursor" mod: "sokol.c" os: "linux" cached: "" }, CFlag{ name: "-l" value: "Xi" mod: "sokol.c" os: "linux" cached: "" }, CFlag{ name: "-L" value: "/usr/local/lib" mod: "sokol.c" os: "freebsd" cached: "" }, CFlag{ name: "-l" value: "X11" mod: "sokol.c" os: "freebsd" cached: "" }, CFlag{ name: "-l" value: "GL" mod: "sokol.c" os: "freebsd" cached: "" }, CFlag{ name: "-l" value: "Xcursor" mod: "sokol.c" os: "freebsd" cached: "" }, CFlag{ name: "-l" value: "Xi" mod: "sokol.c" os: "freebsd" cached: "" }, CFlag{ name: "-l" value: "gdi32" mod: "sokol.c" os: "windows" cached: "" }, CFlag{ name: "" value: "-DSOKOL_METAL" mod: "sokol.c" os: "darwin" cached: "" }, CFlag{ name: "-framework" value: "Metal" mod: "sokol.c" os: "darwin" cached: "" }, CFlag{ name: "-framework" value: "Cocoa" mod: "sokol.c" os: "darwin" cached: "" }, CFlag{ name: "-framework" value: "MetalKit" mod: "sokol.c" os: "darwin" cached: "" }, CFlag{ name: "-framework" value: "QuartzCore" mod: "sokol.c" os: "darwin" cached: "" }, CFlag{ name: "" value: "-DSOKOL_GLCORE33" mod: "sokol.c" os: "linux" cached: "" }, CFlag{ name: "" value: "-DSOKOL_GLCORE33" mod: "sokol.c" os: "freebsd" cached: "" }, CFlag{ name: "" value: "-DSOKOL_GLCORE33" mod: "sokol.c" os: "windows" cached: "" }, CFlag{ name: "" value: "-DSOKOL_NO_ENTRY" mod: "sokol.c" os: "linux" cached: "" }, CFlag{ name: "" value: "-DSOKOL_NO_ENTRY" mod: "sokol.c" os: "darwin" cached: "" }, CFlag{ name: "" value: "-DSOKOL_NO_ENTRY" mod: "sokol.c" os: "windows" cached: "" }, CFlag{ name: "" value: "-DSOKOL_WIN32_FORCE_MAIN" mod: "sokol.c" os: "windows" cached: "" }, CFlag{ name: "" value: "-DSOKOL_NO_ENTRY" mod: "sokol.c" os: "freebsd" cached: "" }, CFlag{ name: "" value: "-DSOKOL_NO_ENTRY" mod: "sokol.c" os: "solaris" cached: "" }, CFlag{ name: "-I" value: "." mod: "sokol.f" os: "linux" cached: "" }]
cc() isprod=false outname=/Users/avioli/repos/v-ui/examples/users

=====================
> C compiler cmd: cc @/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.16429853518114588792.tmp.c.rsp
=====================
2888.083 ms C  cc
==================
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
...
==================
(Use `v -cg` to print the entire error message)

builder error: 
==================
C error. This should never happen.

If you were not working with C interop, please raise an issue on GitHub:

https://github.com/vlang/v/issues/new/choose

You can also use #help on Discord: https://discord.gg/vlang

--

Tried running: v -showcc -cg -cflags '-v' users.v:

output
=====================
> C compiler cmd: cc @/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c.rsp
> C compiler response file /var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c.rsp:
  -v -std=gnu99 -g "/Users/avioli/.vmodules/cache/e7/e7e0a8f8f54b6aaa50af58dd2f3f958c.o" -o "/Users/avioli/repos/v-ui/examples/users" -x objective-c "/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c" -x none -mmacosx-version-min=10.7 -framework Cocoa -I "/Users/avioli/repos/v/thirdparty/stb_image" -I "/Users/avioli/repos/v/thirdparty/fontstash" -I "/Users/avioli/repos/v/thirdparty/sokol" -I "/Users/avioli/repos/v/thirdparty/sokol/util" -fobjc-arc -DSOKOL_METAL -framework Metal -framework Cocoa -framework MetalKit -framework QuartzCore -DSOKOL_NO_ENTRY  -rdynamic  
=====================
Apple clang version 11.0.0 (clang-1100.0.33.17)
Target: x86_64-apple-darwin18.7.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
 "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" -cc1 -triple x86_64-apple-macosx10.7.0 -Wdeprecated-objc-isa-usage -Werror=deprecated-objc-isa-usage -emit-obj -mrelax-all -disable-free -disable-llvm-verifier -discard-value-names -main-file-name users.11530666916124205342.tmp.c -mrelocation-model pic -pic-level 2 -mthread-model posix -mdisable-fp-elim -fno-strict-return -masm-verbose -munwind-tables -faligned-alloc-unavailable -target-sdk-version=10.14 -target-cpu core2 -dwarf-column-info -debug-info-kind=standalone -dwarf-version=2 -debugger-tuning=lldb -ggnu-pubnames -target-linker-version 530 -v -resource-dir /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/11.0.0 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk -I /Users/avioli/repos/v/thirdparty/stb_image -I /Users/avioli/repos/v/thirdparty/fontstash -I /Users/avioli/repos/v/thirdparty/sokol -I /Users/avioli/repos/v/thirdparty/sokol/util -D SOKOL_METAL -D SOKOL_NO_ENTRY -I/usr/local/include -Wno-framework-include-private-from-public -Wno-atimport-in-framework-header -Wno-extra-semi-stmt -Wno-quoted-include-in-framework-header -std=gnu99 -fdebug-compilation-dir /Users/avioli/repos/v -ferror-limit 19 -fmessage-length 0 -stack-protector 1 -mdarwin-stkchk-strong-link -fblocks -fencode-extended-block-signature -fregister-global-dtors-with-atexit -fobjc-runtime=macosx-10.7.0 -fobjc-arc -fobjc-exceptions -fexceptions -fmax-type-align=16 -fdiagnostics-show-option -o /var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/users-9d22e7.o -x objective-c /var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c
clang -cc1 version 11.0.0 (clang-1100.0.33.17) default target x86_64-apple-darwin18.7.0
ignoring nonexistent directory "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/local/include"
ignoring nonexistent directory "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/Library/Frameworks"
#include "..." search starts here:
#include <...> search starts here:
 /Users/avioli/repos/v/thirdparty/stb_image
 /Users/avioli/repos/v/thirdparty/fontstash
 /Users/avioli/repos/v/thirdparty/sokol
 /Users/avioli/repos/v/thirdparty/sokol/util
 /usr/local/include
 /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/11.0.0/include
 /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include
 /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include
 /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks (framework directory)
End of search list.
In file included from /var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4028:
/Users/avioli/repos/v/vlib/clipboard/clipboard_darwin.m:11:9: warning: returning 'const char * _Nullable' from a function with result type 'char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
        return [ns_clip UTF8String];
               ^~~~~~~~~~~~~~~~~~~~
In file included from /var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4686:
/Users/avioli/.vmodules/ui/ui_darwin.m:37:14: warning: passing 'const char * _Nullable' to parameter of type 'byteptr' (aka 'unsigned char *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
        return tos2([[[NSBundle mainBundle] bundlePath] UTF8String]);
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:3469:21: note: passing argument to parameter 's' here
string tos2(byteptr s);
                    ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4830:13: warning: incompatible pointer types initializing '_ui__Layout_get_ui_fn' (aka 'struct ui__UI *(*)(void *)') with an expression of type 'ui__UI *(ui__Group *)' (aka 'struct ui__UI *(struct ui__Group *)') [-Wincompatible-pointer-types]
                .get_ui = ui__Group_get_ui,
                          ^~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4831:16: warning: incompatible pointer types initializing '_ui__Layout_get_state_fn' (aka 'void *(*)(void *)') with an expression of type 'voidptr (ui__Group *)' (aka 'void *(struct ui__Group *)') [-Wincompatible-pointer-types]
                .get_state = ui__Group_get_state,
                             ^~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4832:11: warning: incompatible pointer types initializing '_ui__Layout_size_fn' (aka 'struct multi_return_int_int (*)(void *)') with an expression of type 'multi_return_int_int (ui__Group *)' (aka 'struct multi_return_int_int (struct ui__Group *)') [-Wincompatible-pointer-types]
                .size = ui__Group_size,
                        ^~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4833:21: warning: incompatible pointer types initializing '_ui__Layout_get_subscriber_fn' (aka 'struct eventbus__Subscriber *(*)(void *)') with an expression of type 'eventbus__Subscriber *(ui__Group *)' (aka 'struct eventbus__Subscriber *(struct ui__Group *)') [-Wincompatible-pointer-types]
                .get_subscriber = ui__Group_get_subscriber,
                                  ^~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4834:18: warning: incompatible pointer types initializing '_ui__Layout_unfocus_all_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Group *)' (aka 'void (struct ui__Group *)') [-Wincompatible-pointer-types]
                .unfocus_all = ui__Group_unfocus_all,
                               ^~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4835:11: warning: incompatible pointer types initializing '_ui__Layout_draw_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Group *)' (aka 'void (struct ui__Group *)') [-Wincompatible-pointer-types]
                .draw = ui__Group_draw,
                        ^~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4836:13: warning: incompatible pointer types initializing '_ui__Layout_resize_fn' (aka 'void (*)(void *, int, int)') with an expression of type 'void (ui__Group *, int, int)' (aka 'void (struct ui__Group *, int, int)') [-Wincompatible-pointer-types]
                .resize = ui__Group_resize,
                          ^~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4839:13: warning: incompatible pointer types initializing '_ui__Layout_get_ui_fn' (aka 'struct ui__UI *(*)(void *)') with an expression of type 'ui__UI *(ui__Stack *)' (aka 'struct ui__UI *(struct ui__Stack *)') [-Wincompatible-pointer-types]
                .get_ui = ui__Stack_get_ui,
                          ^~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4840:16: warning: incompatible pointer types initializing '_ui__Layout_get_state_fn' (aka 'void *(*)(void *)') with an expression of type 'voidptr (ui__Stack *)' (aka 'void *(struct ui__Stack *)') [-Wincompatible-pointer-types]
                .get_state = ui__Stack_get_state,
                             ^~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4841:11: warning: incompatible pointer types initializing '_ui__Layout_size_fn' (aka 'struct multi_return_int_int (*)(void *)') with an expression of type 'multi_return_int_int (ui__Stack *)' (aka 'struct multi_return_int_int (struct ui__Stack *)') [-Wincompatible-pointer-types]
                .size = ui__Stack_size,
                        ^~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4842:21: warning: incompatible pointer types initializing '_ui__Layout_get_subscriber_fn' (aka 'struct eventbus__Subscriber *(*)(void *)') with an expression of type 'eventbus__Subscriber *(ui__Stack *)' (aka 'struct eventbus__Subscriber *(struct ui__Stack *)') [-Wincompatible-pointer-types]
                .get_subscriber = ui__Stack_get_subscriber,
                                  ^~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4843:18: warning: incompatible pointer types initializing '_ui__Layout_unfocus_all_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Stack *)' (aka 'void (struct ui__Stack *)') [-Wincompatible-pointer-types]
                .unfocus_all = ui__Stack_unfocus_all,
                               ^~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4844:11: warning: incompatible pointer types initializing '_ui__Layout_draw_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Stack *)' (aka 'void (struct ui__Stack *)') [-Wincompatible-pointer-types]
                .draw = ui__Stack_draw,
                        ^~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4845:13: warning: incompatible pointer types initializing '_ui__Layout_resize_fn' (aka 'void (*)(void *, int, int)') with an expression of type 'void (ui__Stack *, int, int)' (aka 'void (struct ui__Stack *, int, int)') [-Wincompatible-pointer-types]
                .resize = ui__Stack_resize,
                          ^~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4848:13: warning: incompatible pointer types initializing '_ui__Layout_get_ui_fn' (aka 'struct ui__UI *(*)(void *)') with an expression of type 'ui__UI *(ui__Window *)' (aka 'struct ui__UI *(struct ui__Window *)') [-Wincompatible-pointer-types]
                .get_ui = ui__Window_get_ui,
                          ^~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4849:16: warning: incompatible pointer types initializing '_ui__Layout_get_state_fn' (aka 'void *(*)(void *)') with an expression of type 'voidptr (ui__Window *)' (aka 'void *(struct ui__Window *)') [-Wincompatible-pointer-types]
                .get_state = ui__Window_get_state,
                             ^~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4850:11: warning: incompatible pointer types initializing '_ui__Layout_size_fn' (aka 'struct multi_return_int_int (*)(void *)') with an expression of type 'multi_return_int_int (ui__Window *)' (aka 'struct multi_return_int_int (struct ui__Window *)') [-Wincompatible-pointer-types]
                .size = ui__Window_size,
                        ^~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4851:21: warning: incompatible pointer types initializing '_ui__Layout_get_subscriber_fn' (aka 'struct eventbus__Subscriber *(*)(void *)') with an expression of type 'eventbus__Subscriber *(ui__Window *)' (aka 'struct eventbus__Subscriber *(struct ui__Window *)') [-Wincompatible-pointer-types]
                .get_subscriber = ui__Window_get_subscriber,
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4852:18: warning: incompatible pointer types initializing '_ui__Layout_unfocus_all_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Window *)' (aka 'void (struct ui__Window *)') [-Wincompatible-pointer-types]
                .unfocus_all = ui__Window_unfocus_all,
                               ^~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4853:11: warning: incompatible pointer types initializing '_ui__Layout_draw_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Window *)' (aka 'void (struct ui__Window *)') [-Wincompatible-pointer-types]
                .draw = ui__Window_draw,
                        ^~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4854:13: warning: incompatible pointer types initializing '_ui__Layout_resize_fn' (aka 'void (*)(void *, int, int)') with an expression of type 'void (ui__Window *, int, int)' (aka 'void (struct ui__Window *, int, int)') [-Wincompatible-pointer-types]
                .resize = ui__Window_resize,
                          ^~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4980:11: warning: incompatible pointer types initializing '_ui__Widget_init_fn' (aka 'void (*)(void *, _Interface)') with an expression of type 'void (ui__TextBox *, ui__Layout)' (aka 'void (struct ui__TextBox *, _Interface)') [-Wincompatible-pointer-types]
                .init = ui__TextBox_init,
                        ^~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4981:11: warning: incompatible pointer types initializing '_ui__Widget_draw_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__TextBox *)' (aka 'void (struct ui__TextBox *)') [-Wincompatible-pointer-types]
                .draw = ui__TextBox_draw,
                        ^~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4982:19: warning: incompatible pointer types initializing '_ui__Widget_point_inside_fn' (aka 'bool (*)(void *, double, double)') with an expression of type 'bool (ui__TextBox *, f64, f64)' (aka 'bool (struct ui__TextBox *, double, double)') [-Wincompatible-pointer-types]
                .point_inside = ui__TextBox_point_inside,
                                ^~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4983:14: warning: incompatible pointer types initializing '_ui__Widget_unfocus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__TextBox *)' (aka 'void (struct ui__TextBox *)') [-Wincompatible-pointer-types]
                .unfocus = ui__TextBox_unfocus,
                           ^~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4984:12: warning: incompatible pointer types initializing '_ui__Widget_focus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__TextBox *)' (aka 'void (struct ui__TextBox *)') [-Wincompatible-pointer-types]
                .focus = ui__TextBox_focus,
                         ^~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4985:14: warning: incompatible pointer types initializing '_ui__Widget_set_pos_fn' (aka 'void (*)(void *, int, int)') with an expression of type 'void (ui__TextBox *, int, int)' (aka 'void (struct ui__TextBox *, int, int)') [-Wincompatible-pointer-types]
                .set_pos = ui__TextBox_set_pos,
                           ^~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4986:19: warning: incompatible pointer types initializing '_ui__Widget_propose_size_fn' (aka 'struct multi_return_int_int (*)(void *, int, int)') with an expression of type 'multi_return_int_int (ui__TextBox *, int, int)' (aka 'struct multi_return_int_int (struct ui__TextBox *, int, int)') [-Wincompatible-pointer-types]
                .propose_size = ui__TextBox_propose_size,
                                ^~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4987:11: warning: incompatible pointer types initializing '_ui__Widget_size_fn' (aka 'struct multi_return_int_int (*)(void *)') with an expression of type 'multi_return_int_int (ui__TextBox *)' (aka 'struct multi_return_int_int (struct ui__TextBox *)') [-Wincompatible-pointer-types]
                .size = ui__TextBox_size,
                        ^~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4988:17: warning: incompatible pointer types initializing '_ui__Widget_is_focused_fn' (aka 'bool (*)(void *)') with an expression of type 'bool (ui__TextBox *)' (aka 'bool (struct ui__TextBox *)') [-Wincompatible-pointer-types]
                .is_focused = ui__TextBox_is_focused,
                              ^~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4991:11: warning: incompatible pointer types initializing '_ui__Widget_init_fn' (aka 'void (*)(void *, _Interface)') with an expression of type 'void (ui__Button *, ui__Layout)' (aka 'void (struct ui__Button *, _Interface)') [-Wincompatible-pointer-types]
                .init = ui__Button_init,
                        ^~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4992:11: warning: incompatible pointer types initializing '_ui__Widget_draw_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Button *)' (aka 'void (struct ui__Button *)') [-Wincompatible-pointer-types]
                .draw = ui__Button_draw,
                        ^~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4993:19: warning: incompatible pointer types initializing '_ui__Widget_point_inside_fn' (aka 'bool (*)(void *, double, double)') with an expression of type 'bool (ui__Button *, f64, f64)' (aka 'bool (struct ui__Button *, double, double)') [-Wincompatible-pointer-types]
                .point_inside = ui__Button_point_inside,
                                ^~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4994:14: warning: incompatible pointer types initializing '_ui__Widget_unfocus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Button *)' (aka 'void (struct ui__Button *)') [-Wincompatible-pointer-types]
                .unfocus = ui__Button_unfocus,
                           ^~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4995:12: warning: incompatible pointer types initializing '_ui__Widget_focus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Button *)' (aka 'void (struct ui__Button *)') [-Wincompatible-pointer-types]
                .focus = ui__Button_focus,
                         ^~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4996:14: warning: incompatible pointer types initializing '_ui__Widget_set_pos_fn' (aka 'void (*)(void *, int, int)') with an expression of type 'void (ui__Button *, int, int)' (aka 'void (struct ui__Button *, int, int)') [-Wincompatible-pointer-types]
                .set_pos = ui__Button_set_pos,
                           ^~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4997:19: warning: incompatible pointer types initializing '_ui__Widget_propose_size_fn' (aka 'struct multi_return_int_int (*)(void *, int, int)') with an expression of type 'multi_return_int_int (ui__Button *, int, int)' (aka 'struct multi_return_int_int (struct ui__Button *, int, int)') [-Wincompatible-pointer-types]
                .propose_size = ui__Button_propose_size,
                                ^~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4998:11: warning: incompatible pointer types initializing '_ui__Widget_size_fn' (aka 'struct multi_return_int_int (*)(void *)') with an expression of type 'multi_return_int_int (ui__Button *)' (aka 'struct multi_return_int_int (struct ui__Button *)') [-Wincompatible-pointer-types]
                .size = ui__Button_size,
                        ^~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:4999:17: warning: incompatible pointer types initializing '_ui__Widget_is_focused_fn' (aka 'bool (*)(void *)') with an expression of type 'bool (ui__Button *)' (aka 'bool (struct ui__Button *)') [-Wincompatible-pointer-types]
                .is_focused = ui__Button_is_focused,
                              ^~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5002:11: warning: incompatible pointer types initializing '_ui__Widget_init_fn' (aka 'void (*)(void *, _Interface)') with an expression of type 'void (ui__ProgressBar *, ui__Layout)' (aka 'void (struct ui__ProgressBar *, _Interface)') [-Wincompatible-pointer-types]
                .init = ui__ProgressBar_init,
                        ^~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5003:11: warning: incompatible pointer types initializing '_ui__Widget_draw_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__ProgressBar *)' (aka 'void (struct ui__ProgressBar *)') [-Wincompatible-pointer-types]
                .draw = ui__ProgressBar_draw,
                        ^~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5004:19: warning: incompatible pointer types initializing '_ui__Widget_point_inside_fn' (aka 'bool (*)(void *, double, double)') with an expression of type 'bool (ui__ProgressBar *, f64, f64)' (aka 'bool (struct ui__ProgressBar *, double, double)') [-Wincompatible-pointer-types]
                .point_inside = ui__ProgressBar_point_inside,
                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5005:14: warning: incompatible pointer types initializing '_ui__Widget_unfocus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__ProgressBar *)' (aka 'void (struct ui__ProgressBar *)') [-Wincompatible-pointer-types]
                .unfocus = ui__ProgressBar_unfocus,
                           ^~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5006:12: warning: incompatible pointer types initializing '_ui__Widget_focus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__ProgressBar *)' (aka 'void (struct ui__ProgressBar *)') [-Wincompatible-pointer-types]
                .focus = ui__ProgressBar_focus,
                         ^~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5007:14: warning: incompatible pointer types initializing '_ui__Widget_set_pos_fn' (aka 'void (*)(void *, int, int)') with an expression of type 'void (ui__ProgressBar *, int, int)' (aka 'void (struct ui__ProgressBar *, int, int)') [-Wincompatible-pointer-types]
                .set_pos = ui__ProgressBar_set_pos,
                           ^~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5008:19: warning: incompatible pointer types initializing '_ui__Widget_propose_size_fn' (aka 'struct multi_return_int_int (*)(void *, int, int)') with an expression of type 'multi_return_int_int (ui__ProgressBar *, int, int)' (aka 'struct multi_return_int_int (struct ui__ProgressBar *, int, int)') [-Wincompatible-pointer-types]
                .propose_size = ui__ProgressBar_propose_size,
                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5009:11: warning: incompatible pointer types initializing '_ui__Widget_size_fn' (aka 'struct multi_return_int_int (*)(void *)') with an expression of type 'multi_return_int_int (ui__ProgressBar *)' (aka 'struct multi_return_int_int (struct ui__ProgressBar *)') [-Wincompatible-pointer-types]
                .size = ui__ProgressBar_size,
                        ^~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5010:17: warning: incompatible pointer types initializing '_ui__Widget_is_focused_fn' (aka 'bool (*)(void *)') with an expression of type 'bool (ui__ProgressBar *)' (aka 'bool (struct ui__ProgressBar *)') [-Wincompatible-pointer-types]
                .is_focused = ui__ProgressBar_is_focused,
                              ^~~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5013:11: warning: incompatible pointer types initializing '_ui__Widget_init_fn' (aka 'void (*)(void *, _Interface)') with an expression of type 'void (ui__Slider *, ui__Layout)' (aka 'void (struct ui__Slider *, _Interface)') [-Wincompatible-pointer-types]
                .init = ui__Slider_init,
                        ^~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5014:11: warning: incompatible pointer types initializing '_ui__Widget_draw_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Slider *)' (aka 'void (struct ui__Slider *)') [-Wincompatible-pointer-types]
                .draw = ui__Slider_draw,
                        ^~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5015:19: warning: incompatible pointer types initializing '_ui__Widget_point_inside_fn' (aka 'bool (*)(void *, double, double)') with an expression of type 'bool (ui__Slider *, f64, f64)' (aka 'bool (struct ui__Slider *, double, double)') [-Wincompatible-pointer-types]
                .point_inside = ui__Slider_point_inside,
                                ^~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5016:14: warning: incompatible pointer types initializing '_ui__Widget_unfocus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Slider *)' (aka 'void (struct ui__Slider *)') [-Wincompatible-pointer-types]
                .unfocus = ui__Slider_unfocus,
                           ^~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5017:12: warning: incompatible pointer types initializing '_ui__Widget_focus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Slider *)' (aka 'void (struct ui__Slider *)') [-Wincompatible-pointer-types]
                .focus = ui__Slider_focus,
                         ^~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5018:14: warning: incompatible pointer types initializing '_ui__Widget_set_pos_fn' (aka 'void (*)(void *, int, int)') with an expression of type 'void (ui__Slider *, int, int)' (aka 'void (struct ui__Slider *, int, int)') [-Wincompatible-pointer-types]
                .set_pos = ui__Slider_set_pos,
                           ^~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5019:19: warning: incompatible pointer types initializing '_ui__Widget_propose_size_fn' (aka 'struct multi_return_int_int (*)(void *, int, int)') with an expression of type 'multi_return_int_int (ui__Slider *, int, int)' (aka 'struct multi_return_int_int (struct ui__Slider *, int, int)') [-Wincompatible-pointer-types]
                .propose_size = ui__Slider_propose_size,
                                ^~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5020:11: warning: incompatible pointer types initializing '_ui__Widget_size_fn' (aka 'struct multi_return_int_int (*)(void *)') with an expression of type 'multi_return_int_int (ui__Slider *)' (aka 'struct multi_return_int_int (struct ui__Slider *)') [-Wincompatible-pointer-types]
                .size = ui__Slider_size,
                        ^~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5021:17: warning: incompatible pointer types initializing '_ui__Widget_is_focused_fn' (aka 'bool (*)(void *)') with an expression of type 'bool (ui__Slider *)' (aka 'bool (struct ui__Slider *)') [-Wincompatible-pointer-types]
                .is_focused = ui__Slider_is_focused,
                              ^~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5024:11: warning: incompatible pointer types initializing '_ui__Widget_init_fn' (aka 'void (*)(void *, _Interface)') with an expression of type 'void (ui__CheckBox *, ui__Layout)' (aka 'void (struct ui__CheckBox *, _Interface)') [-Wincompatible-pointer-types]
                .init = ui__CheckBox_init,
                        ^~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5025:11: warning: incompatible pointer types initializing '_ui__Widget_draw_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__CheckBox *)' (aka 'void (struct ui__CheckBox *)') [-Wincompatible-pointer-types]
                .draw = ui__CheckBox_draw,
                        ^~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5026:19: warning: incompatible pointer types initializing '_ui__Widget_point_inside_fn' (aka 'bool (*)(void *, double, double)') with an expression of type 'bool (ui__CheckBox *, f64, f64)' (aka 'bool (struct ui__CheckBox *, double, double)') [-Wincompatible-pointer-types]
                .point_inside = ui__CheckBox_point_inside,
                                ^~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5027:14: warning: incompatible pointer types initializing '_ui__Widget_unfocus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__CheckBox *)' (aka 'void (struct ui__CheckBox *)') [-Wincompatible-pointer-types]
                .unfocus = ui__CheckBox_unfocus,
                           ^~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5028:12: warning: incompatible pointer types initializing '_ui__Widget_focus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__CheckBox *)' (aka 'void (struct ui__CheckBox *)') [-Wincompatible-pointer-types]
                .focus = ui__CheckBox_focus,
                         ^~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5029:14: warning: incompatible pointer types initializing '_ui__Widget_set_pos_fn' (aka 'void (*)(void *, int, int)') with an expression of type 'void (ui__CheckBox *, int, int)' (aka 'void (struct ui__CheckBox *, int, int)') [-Wincompatible-pointer-types]
                .set_pos = ui__CheckBox_set_pos,
                           ^~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5030:19: warning: incompatible pointer types initializing '_ui__Widget_propose_size_fn' (aka 'struct multi_return_int_int (*)(void *, int, int)') with an expression of type 'multi_return_int_int (ui__CheckBox *, int, int)' (aka 'struct multi_return_int_int (struct ui__CheckBox *, int, int)') [-Wincompatible-pointer-types]
                .propose_size = ui__CheckBox_propose_size,
                                ^~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5031:11: warning: incompatible pointer types initializing '_ui__Widget_size_fn' (aka 'struct multi_return_int_int (*)(void *)') with an expression of type 'multi_return_int_int (ui__CheckBox *)' (aka 'struct multi_return_int_int (struct ui__CheckBox *)') [-Wincompatible-pointer-types]
                .size = ui__CheckBox_size,
                        ^~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5032:17: warning: incompatible pointer types initializing '_ui__Widget_is_focused_fn' (aka 'bool (*)(void *)') with an expression of type 'bool (ui__CheckBox *)' (aka 'bool (struct ui__CheckBox *)') [-Wincompatible-pointer-types]
                .is_focused = ui__CheckBox_is_focused,
                              ^~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5035:11: warning: incompatible pointer types initializing '_ui__Widget_init_fn' (aka 'void (*)(void *, _Interface)') with an expression of type 'void (ui__Label *, ui__Layout)' (aka 'void (struct ui__Label *, _Interface)') [-Wincompatible-pointer-types]
                .init = ui__Label_init,
                        ^~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5036:11: warning: incompatible pointer types initializing '_ui__Widget_draw_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Label *)' (aka 'void (struct ui__Label *)') [-Wincompatible-pointer-types]
                .draw = ui__Label_draw,
                        ^~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5037:19: warning: incompatible pointer types initializing '_ui__Widget_point_inside_fn' (aka 'bool (*)(void *, double, double)') with an expression of type 'bool (ui__Label *, f64, f64)' (aka 'bool (struct ui__Label *, double, double)') [-Wincompatible-pointer-types]
                .point_inside = ui__Label_point_inside,
                                ^~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5038:14: warning: incompatible pointer types initializing '_ui__Widget_unfocus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Label *)' (aka 'void (struct ui__Label *)') [-Wincompatible-pointer-types]
                .unfocus = ui__Label_unfocus,
                           ^~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5039:12: warning: incompatible pointer types initializing '_ui__Widget_focus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Label *)' (aka 'void (struct ui__Label *)') [-Wincompatible-pointer-types]
                .focus = ui__Label_focus,
                         ^~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5040:14: warning: incompatible pointer types initializing '_ui__Widget_set_pos_fn' (aka 'void (*)(void *, int, int)') with an expression of type 'void (ui__Label *, int, int)' (aka 'void (struct ui__Label *, int, int)') [-Wincompatible-pointer-types]
                .set_pos = ui__Label_set_pos,
                           ^~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5041:19: warning: incompatible pointer types initializing '_ui__Widget_propose_size_fn' (aka 'struct multi_return_int_int (*)(void *, int, int)') with an expression of type 'multi_return_int_int (ui__Label *, int, int)' (aka 'struct multi_return_int_int (struct ui__Label *, int, int)') [-Wincompatible-pointer-types]
                .propose_size = ui__Label_propose_size,
                                ^~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5042:11: warning: incompatible pointer types initializing '_ui__Widget_size_fn' (aka 'struct multi_return_int_int (*)(void *)') with an expression of type 'multi_return_int_int (ui__Label *)' (aka 'struct multi_return_int_int (struct ui__Label *)') [-Wincompatible-pointer-types]
                .size = ui__Label_size,
                        ^~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5043:17: warning: incompatible pointer types initializing '_ui__Widget_is_focused_fn' (aka 'bool (*)(void *)') with an expression of type 'bool (ui__Label *)' (aka 'bool (struct ui__Label *)') [-Wincompatible-pointer-types]
                .is_focused = ui__Label_is_focused,
                              ^~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5046:11: warning: incompatible pointer types initializing '_ui__Widget_init_fn' (aka 'void (*)(void *, _Interface)') with an expression of type 'void (ui__Radio *, ui__Layout)' (aka 'void (struct ui__Radio *, _Interface)') [-Wincompatible-pointer-types]
                .init = ui__Radio_init,
                        ^~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5047:11: warning: incompatible pointer types initializing '_ui__Widget_draw_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Radio *)' (aka 'void (struct ui__Radio *)') [-Wincompatible-pointer-types]
                .draw = ui__Radio_draw,
                        ^~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5048:19: warning: incompatible pointer types initializing '_ui__Widget_point_inside_fn' (aka 'bool (*)(void *, double, double)') with an expression of type 'bool (ui__Radio *, f64, f64)' (aka 'bool (struct ui__Radio *, double, double)') [-Wincompatible-pointer-types]
                .point_inside = ui__Radio_point_inside,
                                ^~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5049:14: warning: incompatible pointer types initializing '_ui__Widget_unfocus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Radio *)' (aka 'void (struct ui__Radio *)') [-Wincompatible-pointer-types]
                .unfocus = ui__Radio_unfocus,
                           ^~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5050:12: warning: incompatible pointer types initializing '_ui__Widget_focus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Radio *)' (aka 'void (struct ui__Radio *)') [-Wincompatible-pointer-types]
                .focus = ui__Radio_focus,
                         ^~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5051:14: warning: incompatible pointer types initializing '_ui__Widget_set_pos_fn' (aka 'void (*)(void *, int, int)') with an expression of type 'void (ui__Radio *, int, int)' (aka 'void (struct ui__Radio *, int, int)') [-Wincompatible-pointer-types]
                .set_pos = ui__Radio_set_pos,
                           ^~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5052:19: warning: incompatible pointer types initializing '_ui__Widget_propose_size_fn' (aka 'struct multi_return_int_int (*)(void *, int, int)') with an expression of type 'multi_return_int_int (ui__Radio *, int, int)' (aka 'struct multi_return_int_int (struct ui__Radio *, int, int)') [-Wincompatible-pointer-types]
                .propose_size = ui__Radio_propose_size,
                                ^~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5053:11: warning: incompatible pointer types initializing '_ui__Widget_size_fn' (aka 'struct multi_return_int_int (*)(void *)') with an expression of type 'multi_return_int_int (ui__Radio *)' (aka 'struct multi_return_int_int (struct ui__Radio *)') [-Wincompatible-pointer-types]
                .size = ui__Radio_size,
                        ^~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5054:17: warning: incompatible pointer types initializing '_ui__Widget_is_focused_fn' (aka 'bool (*)(void *)') with an expression of type 'bool (ui__Radio *)' (aka 'bool (struct ui__Radio *)') [-Wincompatible-pointer-types]
                .is_focused = ui__Radio_is_focused,
                              ^~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5057:11: warning: incompatible pointer types initializing '_ui__Widget_init_fn' (aka 'void (*)(void *, _Interface)') with an expression of type 'void (ui__Picture *, ui__Layout)' (aka 'void (struct ui__Picture *, _Interface)') [-Wincompatible-pointer-types]
                .init = ui__Picture_init,
                        ^~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5058:11: warning: incompatible pointer types initializing '_ui__Widget_draw_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Picture *)' (aka 'void (struct ui__Picture *)') [-Wincompatible-pointer-types]
                .draw = ui__Picture_draw,
                        ^~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5059:19: warning: incompatible pointer types initializing '_ui__Widget_point_inside_fn' (aka 'bool (*)(void *, double, double)') with an expression of type 'bool (ui__Picture *, f64, f64)' (aka 'bool (struct ui__Picture *, double, double)') [-Wincompatible-pointer-types]
                .point_inside = ui__Picture_point_inside,
                                ^~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5060:14: warning: incompatible pointer types initializing '_ui__Widget_unfocus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Picture *)' (aka 'void (struct ui__Picture *)') [-Wincompatible-pointer-types]
                .unfocus = ui__Picture_unfocus,
                           ^~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5061:12: warning: incompatible pointer types initializing '_ui__Widget_focus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Picture *)' (aka 'void (struct ui__Picture *)') [-Wincompatible-pointer-types]
                .focus = ui__Picture_focus,
                         ^~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5062:14: warning: incompatible pointer types initializing '_ui__Widget_set_pos_fn' (aka 'void (*)(void *, int, int)') with an expression of type 'void (ui__Picture *, int, int)' (aka 'void (struct ui__Picture *, int, int)') [-Wincompatible-pointer-types]
                .set_pos = ui__Picture_set_pos,
                           ^~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5063:19: warning: incompatible pointer types initializing '_ui__Widget_propose_size_fn' (aka 'struct multi_return_int_int (*)(void *, int, int)') with an expression of type 'multi_return_int_int (ui__Picture *, int, int)' (aka 'struct multi_return_int_int (struct ui__Picture *, int, int)') [-Wincompatible-pointer-types]
                .propose_size = ui__Picture_propose_size,
                                ^~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5064:11: warning: incompatible pointer types initializing '_ui__Widget_size_fn' (aka 'struct multi_return_int_int (*)(void *)') with an expression of type 'multi_return_int_int (ui__Picture *)' (aka 'struct multi_return_int_int (struct ui__Picture *)') [-Wincompatible-pointer-types]
                .size = ui__Picture_size,
                        ^~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5065:17: warning: incompatible pointer types initializing '_ui__Widget_is_focused_fn' (aka 'bool (*)(void *)') with an expression of type 'bool (ui__Picture *)' (aka 'bool (struct ui__Picture *)') [-Wincompatible-pointer-types]
                .is_focused = ui__Picture_is_focused,
                              ^~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5068:11: warning: incompatible pointer types initializing '_ui__Widget_init_fn' (aka 'void (*)(void *, _Interface)') with an expression of type 'void (ui__Canvas *, ui__Layout)' (aka 'void (struct ui__Canvas *, _Interface)') [-Wincompatible-pointer-types]
                .init = ui__Canvas_init,
                        ^~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5069:11: warning: incompatible pointer types initializing '_ui__Widget_draw_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Canvas *)' (aka 'void (struct ui__Canvas *)') [-Wincompatible-pointer-types]
                .draw = ui__Canvas_draw,
                        ^~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5070:19: warning: incompatible pointer types initializing '_ui__Widget_point_inside_fn' (aka 'bool (*)(void *, double, double)') with an expression of type 'bool (ui__Canvas *, f64, f64)' (aka 'bool (struct ui__Canvas *, double, double)') [-Wincompatible-pointer-types]
                .point_inside = ui__Canvas_point_inside,
                                ^~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5071:14: warning: incompatible pointer types initializing '_ui__Widget_unfocus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Canvas *)' (aka 'void (struct ui__Canvas *)') [-Wincompatible-pointer-types]
                .unfocus = ui__Canvas_unfocus,
                           ^~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5072:12: warning: incompatible pointer types initializing '_ui__Widget_focus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Canvas *)' (aka 'void (struct ui__Canvas *)') [-Wincompatible-pointer-types]
                .focus = ui__Canvas_focus,
                         ^~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5073:14: warning: incompatible pointer types initializing '_ui__Widget_set_pos_fn' (aka 'void (*)(void *, int, int)') with an expression of type 'void (ui__Canvas *, int, int)' (aka 'void (struct ui__Canvas *, int, int)') [-Wincompatible-pointer-types]
                .set_pos = ui__Canvas_set_pos,
                           ^~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5074:19: warning: incompatible pointer types initializing '_ui__Widget_propose_size_fn' (aka 'struct multi_return_int_int (*)(void *, int, int)') with an expression of type 'multi_return_int_int (ui__Canvas *, int, int)' (aka 'struct multi_return_int_int (struct ui__Canvas *, int, int)') [-Wincompatible-pointer-types]
                .propose_size = ui__Canvas_propose_size,
                                ^~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5075:11: warning: incompatible pointer types initializing '_ui__Widget_size_fn' (aka 'struct multi_return_int_int (*)(void *)') with an expression of type 'multi_return_int_int (ui__Canvas *)' (aka 'struct multi_return_int_int (struct ui__Canvas *)') [-Wincompatible-pointer-types]
                .size = ui__Canvas_size,
                        ^~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5076:17: warning: incompatible pointer types initializing '_ui__Widget_is_focused_fn' (aka 'bool (*)(void *)') with an expression of type 'bool (ui__Canvas *)' (aka 'bool (struct ui__Canvas *)') [-Wincompatible-pointer-types]
                .is_focused = ui__Canvas_is_focused,
                              ^~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5079:11: warning: incompatible pointer types initializing '_ui__Widget_init_fn' (aka 'void (*)(void *, _Interface)') with an expression of type 'void (ui__Menu *, ui__Layout)' (aka 'void (struct ui__Menu *, _Interface)') [-Wincompatible-pointer-types]
                .init = ui__Menu_init,
                        ^~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5080:11: warning: incompatible pointer types initializing '_ui__Widget_draw_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Menu *)' (aka 'void (struct ui__Menu *)') [-Wincompatible-pointer-types]
                .draw = ui__Menu_draw,
                        ^~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5081:19: warning: incompatible pointer types initializing '_ui__Widget_point_inside_fn' (aka 'bool (*)(void *, double, double)') with an expression of type 'bool (ui__Menu *, f64, f64)' (aka 'bool (struct ui__Menu *, double, double)') [-Wincompatible-pointer-types]
                .point_inside = ui__Menu_point_inside,
                                ^~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5082:14: warning: incompatible pointer types initializing '_ui__Widget_unfocus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Menu *)' (aka 'void (struct ui__Menu *)') [-Wincompatible-pointer-types]
                .unfocus = ui__Menu_unfocus,
                           ^~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5083:12: warning: incompatible pointer types initializing '_ui__Widget_focus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Menu *)' (aka 'void (struct ui__Menu *)') [-Wincompatible-pointer-types]
                .focus = ui__Menu_focus,
                         ^~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5084:14: warning: incompatible pointer types initializing '_ui__Widget_set_pos_fn' (aka 'void (*)(void *, int, int)') with an expression of type 'void (ui__Menu *, int, int)' (aka 'void (struct ui__Menu *, int, int)') [-Wincompatible-pointer-types]
                .set_pos = ui__Menu_set_pos,
                           ^~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5085:19: warning: incompatible pointer types initializing '_ui__Widget_propose_size_fn' (aka 'struct multi_return_int_int (*)(void *, int, int)') with an expression of type 'multi_return_int_int (ui__Menu *, int, int)' (aka 'struct multi_return_int_int (struct ui__Menu *, int, int)') [-Wincompatible-pointer-types]
                .propose_size = ui__Menu_propose_size,
                                ^~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5086:11: warning: incompatible pointer types initializing '_ui__Widget_size_fn' (aka 'struct multi_return_int_int (*)(void *)') with an expression of type 'multi_return_int_int (ui__Menu *)' (aka 'struct multi_return_int_int (struct ui__Menu *)') [-Wincompatible-pointer-types]
                .size = ui__Menu_size,
                        ^~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5087:17: warning: incompatible pointer types initializing '_ui__Widget_is_focused_fn' (aka 'bool (*)(void *)') with an expression of type 'bool (ui__Menu *)' (aka 'bool (struct ui__Menu *)') [-Wincompatible-pointer-types]
                .is_focused = ui__Menu_is_focused,
                              ^~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5090:11: warning: incompatible pointer types initializing '_ui__Widget_init_fn' (aka 'void (*)(void *, _Interface)') with an expression of type 'void (ui__Dropdown *, ui__Layout)' (aka 'void (struct ui__Dropdown *, _Interface)') [-Wincompatible-pointer-types]
                .init = ui__Dropdown_init,
                        ^~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5091:11: warning: incompatible pointer types initializing '_ui__Widget_draw_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Dropdown *)' (aka 'void (struct ui__Dropdown *)') [-Wincompatible-pointer-types]
                .draw = ui__Dropdown_draw,
                        ^~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5092:19: warning: incompatible pointer types initializing '_ui__Widget_point_inside_fn' (aka 'bool (*)(void *, double, double)') with an expression of type 'bool (ui__Dropdown *, f64, f64)' (aka 'bool (struct ui__Dropdown *, double, double)') [-Wincompatible-pointer-types]
                .point_inside = ui__Dropdown_point_inside,
                                ^~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5093:14: warning: incompatible pointer types initializing '_ui__Widget_unfocus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Dropdown *)' (aka 'void (struct ui__Dropdown *)') [-Wincompatible-pointer-types]
                .unfocus = ui__Dropdown_unfocus,
                           ^~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5094:12: warning: incompatible pointer types initializing '_ui__Widget_focus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Dropdown *)' (aka 'void (struct ui__Dropdown *)') [-Wincompatible-pointer-types]
                .focus = ui__Dropdown_focus,
                         ^~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5095:14: warning: incompatible pointer types initializing '_ui__Widget_set_pos_fn' (aka 'void (*)(void *, int, int)') with an expression of type 'void (ui__Dropdown *, int, int)' (aka 'void (struct ui__Dropdown *, int, int)') [-Wincompatible-pointer-types]
                .set_pos = ui__Dropdown_set_pos,
                           ^~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5096:19: warning: incompatible pointer types initializing '_ui__Widget_propose_size_fn' (aka 'struct multi_return_int_int (*)(void *, int, int)') with an expression of type 'multi_return_int_int (ui__Dropdown *, int, int)' (aka 'struct multi_return_int_int (struct ui__Dropdown *, int, int)') [-Wincompatible-pointer-types]
                .propose_size = ui__Dropdown_propose_size,
                                ^~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5097:11: warning: incompatible pointer types initializing '_ui__Widget_size_fn' (aka 'struct multi_return_int_int (*)(void *)') with an expression of type 'multi_return_int_int (ui__Dropdown *)' (aka 'struct multi_return_int_int (struct ui__Dropdown *)') [-Wincompatible-pointer-types]
                .size = ui__Dropdown_size,
                        ^~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5098:17: warning: incompatible pointer types initializing '_ui__Widget_is_focused_fn' (aka 'bool (*)(void *)') with an expression of type 'bool (ui__Dropdown *)' (aka 'bool (struct ui__Dropdown *)') [-Wincompatible-pointer-types]
                .is_focused = ui__Dropdown_is_focused,
                              ^~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5101:11: warning: incompatible pointer types initializing '_ui__Widget_init_fn' (aka 'void (*)(void *, _Interface)') with an expression of type 'void (ui__Transition *, ui__Layout)' (aka 'void (struct ui__Transition *, _Interface)') [-Wincompatible-pointer-types]
                .init = ui__Transition_init,
                        ^~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5102:11: warning: incompatible pointer types initializing '_ui__Widget_draw_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Transition *)' (aka 'void (struct ui__Transition *)') [-Wincompatible-pointer-types]
                .draw = ui__Transition_draw,
                        ^~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5103:19: warning: incompatible pointer types initializing '_ui__Widget_point_inside_fn' (aka 'bool (*)(void *, double, double)') with an expression of type 'bool (ui__Transition *, f64, f64)' (aka 'bool (struct ui__Transition *, double, double)') [-Wincompatible-pointer-types]
                .point_inside = ui__Transition_point_inside,
                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5104:14: warning: incompatible pointer types initializing '_ui__Widget_unfocus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Transition *)' (aka 'void (struct ui__Transition *)') [-Wincompatible-pointer-types]
                .unfocus = ui__Transition_unfocus,
                           ^~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5105:12: warning: incompatible pointer types initializing '_ui__Widget_focus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Transition *)' (aka 'void (struct ui__Transition *)') [-Wincompatible-pointer-types]
                .focus = ui__Transition_focus,
                         ^~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5106:14: warning: incompatible pointer types initializing '_ui__Widget_set_pos_fn' (aka 'void (*)(void *, int, int)') with an expression of type 'void (ui__Transition *, int, int)' (aka 'void (struct ui__Transition *, int, int)') [-Wincompatible-pointer-types]
                .set_pos = ui__Transition_set_pos,
                           ^~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5107:19: warning: incompatible pointer types initializing '_ui__Widget_propose_size_fn' (aka 'struct multi_return_int_int (*)(void *, int, int)') with an expression of type 'multi_return_int_int (ui__Transition *, int, int)' (aka 'struct multi_return_int_int (struct ui__Transition *, int, int)') [-Wincompatible-pointer-types]
                .propose_size = ui__Transition_propose_size,
                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5108:11: warning: incompatible pointer types initializing '_ui__Widget_size_fn' (aka 'struct multi_return_int_int (*)(void *)') with an expression of type 'multi_return_int_int (ui__Transition *)' (aka 'struct multi_return_int_int (struct ui__Transition *)') [-Wincompatible-pointer-types]
                .size = ui__Transition_size,
                        ^~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5109:17: warning: incompatible pointer types initializing '_ui__Widget_is_focused_fn' (aka 'bool (*)(void *)') with an expression of type 'bool (ui__Transition *)' (aka 'bool (struct ui__Transition *)') [-Wincompatible-pointer-types]
                .is_focused = ui__Transition_is_focused,
                              ^~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5112:11: warning: incompatible pointer types initializing '_ui__Widget_init_fn' (aka 'void (*)(void *, _Interface)') with an expression of type 'void (ui__Stack *, ui__Layout)' (aka 'void (struct ui__Stack *, _Interface)') [-Wincompatible-pointer-types]
                .init = ui__Stack_init,
                        ^~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5113:11: warning: incompatible pointer types initializing '_ui__Widget_draw_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Stack *)' (aka 'void (struct ui__Stack *)') [-Wincompatible-pointer-types]
                .draw = ui__Stack_draw,
                        ^~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5114:19: warning: incompatible pointer types initializing '_ui__Widget_point_inside_fn' (aka 'bool (*)(void *, double, double)') with an expression of type 'bool (ui__Stack *, f64, f64)' (aka 'bool (struct ui__Stack *, double, double)') [-Wincompatible-pointer-types]
                .point_inside = ui__Stack_point_inside,
                                ^~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5115:14: warning: incompatible pointer types initializing '_ui__Widget_unfocus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Stack *)' (aka 'void (struct ui__Stack *)') [-Wincompatible-pointer-types]
                .unfocus = ui__Stack_unfocus,
                           ^~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5116:12: warning: incompatible pointer types initializing '_ui__Widget_focus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Stack *)' (aka 'void (struct ui__Stack *)') [-Wincompatible-pointer-types]
                .focus = ui__Stack_focus,
                         ^~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5117:14: warning: incompatible pointer types initializing '_ui__Widget_set_pos_fn' (aka 'void (*)(void *, int, int)') with an expression of type 'void (ui__Stack *, int, int)' (aka 'void (struct ui__Stack *, int, int)') [-Wincompatible-pointer-types]
                .set_pos = ui__Stack_set_pos,
                           ^~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5118:19: warning: incompatible pointer types initializing '_ui__Widget_propose_size_fn' (aka 'struct multi_return_int_int (*)(void *, int, int)') with an expression of type 'multi_return_int_int (ui__Stack *, int, int)' (aka 'struct multi_return_int_int (struct ui__Stack *, int, int)') [-Wincompatible-pointer-types]
                .propose_size = ui__Stack_propose_size,
                                ^~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5119:11: warning: incompatible pointer types initializing '_ui__Widget_size_fn' (aka 'struct multi_return_int_int (*)(void *)') with an expression of type 'multi_return_int_int (ui__Stack *)' (aka 'struct multi_return_int_int (struct ui__Stack *)') [-Wincompatible-pointer-types]
                .size = ui__Stack_size,
                        ^~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5120:17: warning: incompatible pointer types initializing '_ui__Widget_is_focused_fn' (aka 'bool (*)(void *)') with an expression of type 'bool (ui__Stack *)' (aka 'bool (struct ui__Stack *)') [-Wincompatible-pointer-types]
                .is_focused = ui__Stack_is_focused,
                              ^~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5123:11: warning: incompatible pointer types initializing '_ui__Widget_init_fn' (aka 'void (*)(void *, _Interface)') with an expression of type 'void (ui__Switch *, ui__Layout)' (aka 'void (struct ui__Switch *, _Interface)') [-Wincompatible-pointer-types]
                .init = ui__Switch_init,
                        ^~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5124:11: warning: incompatible pointer types initializing '_ui__Widget_draw_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Switch *)' (aka 'void (struct ui__Switch *)') [-Wincompatible-pointer-types]
                .draw = ui__Switch_draw,
                        ^~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5125:19: warning: incompatible pointer types initializing '_ui__Widget_point_inside_fn' (aka 'bool (*)(void *, double, double)') with an expression of type 'bool (ui__Switch *, f64, f64)' (aka 'bool (struct ui__Switch *, double, double)') [-Wincompatible-pointer-types]
                .point_inside = ui__Switch_point_inside,
                                ^~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5126:14: warning: incompatible pointer types initializing '_ui__Widget_unfocus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Switch *)' (aka 'void (struct ui__Switch *)') [-Wincompatible-pointer-types]
                .unfocus = ui__Switch_unfocus,
                           ^~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5127:12: warning: incompatible pointer types initializing '_ui__Widget_focus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Switch *)' (aka 'void (struct ui__Switch *)') [-Wincompatible-pointer-types]
                .focus = ui__Switch_focus,
                         ^~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5128:14: warning: incompatible pointer types initializing '_ui__Widget_set_pos_fn' (aka 'void (*)(void *, int, int)') with an expression of type 'void (ui__Switch *, int, int)' (aka 'void (struct ui__Switch *, int, int)') [-Wincompatible-pointer-types]
                .set_pos = ui__Switch_set_pos,
                           ^~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5129:19: warning: incompatible pointer types initializing '_ui__Widget_propose_size_fn' (aka 'struct multi_return_int_int (*)(void *, int, int)') with an expression of type 'multi_return_int_int (ui__Switch *, int, int)' (aka 'struct multi_return_int_int (struct ui__Switch *, int, int)') [-Wincompatible-pointer-types]
                .propose_size = ui__Switch_propose_size,
                                ^~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5130:11: warning: incompatible pointer types initializing '_ui__Widget_size_fn' (aka 'struct multi_return_int_int (*)(void *)') with an expression of type 'multi_return_int_int (ui__Switch *)' (aka 'struct multi_return_int_int (struct ui__Switch *)') [-Wincompatible-pointer-types]
                .size = ui__Switch_size,
                        ^~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5131:17: warning: incompatible pointer types initializing '_ui__Widget_is_focused_fn' (aka 'bool (*)(void *)') with an expression of type 'bool (ui__Switch *)' (aka 'bool (struct ui__Switch *)') [-Wincompatible-pointer-types]
                .is_focused = ui__Switch_is_focused,
                              ^~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5134:11: warning: incompatible pointer types initializing '_ui__Widget_init_fn' (aka 'void (*)(void *, _Interface)') with an expression of type 'void (ui__Rectangle *, ui__Layout)' (aka 'void (struct ui__Rectangle *, _Interface)') [-Wincompatible-pointer-types]
                .init = ui__Rectangle_init,
                        ^~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5135:11: warning: incompatible pointer types initializing '_ui__Widget_draw_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Rectangle *)' (aka 'void (struct ui__Rectangle *)') [-Wincompatible-pointer-types]
                .draw = ui__Rectangle_draw,
                        ^~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5136:19: warning: incompatible pointer types initializing '_ui__Widget_point_inside_fn' (aka 'bool (*)(void *, double, double)') with an expression of type 'bool (ui__Rectangle *, f64, f64)' (aka 'bool (struct ui__Rectangle *, double, double)') [-Wincompatible-pointer-types]
                .point_inside = ui__Rectangle_point_inside,
                                ^~~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5137:14: warning: incompatible pointer types initializing '_ui__Widget_unfocus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Rectangle *)' (aka 'void (struct ui__Rectangle *)') [-Wincompatible-pointer-types]
                .unfocus = ui__Rectangle_unfocus,
                           ^~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5138:12: warning: incompatible pointer types initializing '_ui__Widget_focus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Rectangle *)' (aka 'void (struct ui__Rectangle *)') [-Wincompatible-pointer-types]
                .focus = ui__Rectangle_focus,
                         ^~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5139:14: warning: incompatible pointer types initializing '_ui__Widget_set_pos_fn' (aka 'void (*)(void *, int, int)') with an expression of type 'void (ui__Rectangle *, int, int)' (aka 'void (struct ui__Rectangle *, int, int)') [-Wincompatible-pointer-types]
                .set_pos = ui__Rectangle_set_pos,
                           ^~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5140:19: warning: incompatible pointer types initializing '_ui__Widget_propose_size_fn' (aka 'struct multi_return_int_int (*)(void *, int, int)') with an expression of type 'multi_return_int_int (ui__Rectangle *, int, int)' (aka 'struct multi_return_int_int (struct ui__Rectangle *, int, int)') [-Wincompatible-pointer-types]
                .propose_size = ui__Rectangle_propose_size,
                                ^~~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5141:11: warning: incompatible pointer types initializing '_ui__Widget_size_fn' (aka 'struct multi_return_int_int (*)(void *)') with an expression of type 'multi_return_int_int (ui__Rectangle *)' (aka 'struct multi_return_int_int (struct ui__Rectangle *)') [-Wincompatible-pointer-types]
                .size = ui__Rectangle_size,
                        ^~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5142:17: warning: incompatible pointer types initializing '_ui__Widget_is_focused_fn' (aka 'bool (*)(void *)') with an expression of type 'bool (ui__Rectangle *)' (aka 'bool (struct ui__Rectangle *)') [-Wincompatible-pointer-types]
                .is_focused = ui__Rectangle_is_focused,
                              ^~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5145:11: warning: incompatible pointer types initializing '_ui__Widget_init_fn' (aka 'void (*)(void *, _Interface)') with an expression of type 'void (ui__Group *, ui__Layout)' (aka 'void (struct ui__Group *, _Interface)') [-Wincompatible-pointer-types]
                .init = ui__Group_init,
                        ^~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5146:11: warning: incompatible pointer types initializing '_ui__Widget_draw_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Group *)' (aka 'void (struct ui__Group *)') [-Wincompatible-pointer-types]
                .draw = ui__Group_draw,
                        ^~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5147:19: warning: incompatible pointer types initializing '_ui__Widget_point_inside_fn' (aka 'bool (*)(void *, double, double)') with an expression of type 'bool (ui__Group *, f64, f64)' (aka 'bool (struct ui__Group *, double, double)') [-Wincompatible-pointer-types]
                .point_inside = ui__Group_point_inside,
                                ^~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5148:14: warning: incompatible pointer types initializing '_ui__Widget_unfocus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Group *)' (aka 'void (struct ui__Group *)') [-Wincompatible-pointer-types]
                .unfocus = ui__Group_unfocus,
                           ^~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5149:12: warning: incompatible pointer types initializing '_ui__Widget_focus_fn' (aka 'void (*)(void *)') with an expression of type 'void (ui__Group *)' (aka 'void (struct ui__Group *)') [-Wincompatible-pointer-types]
                .focus = ui__Group_focus,
                         ^~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5150:14: warning: incompatible pointer types initializing '_ui__Widget_set_pos_fn' (aka 'void (*)(void *, int, int)') with an expression of type 'void (ui__Group *, int, int)' (aka 'void (struct ui__Group *, int, int)') [-Wincompatible-pointer-types]
                .set_pos = ui__Group_set_pos,
                           ^~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5151:19: warning: incompatible pointer types initializing '_ui__Widget_propose_size_fn' (aka 'struct multi_return_int_int (*)(void *, int, int)') with an expression of type 'multi_return_int_int (ui__Group *, int, int)' (aka 'struct multi_return_int_int (struct ui__Group *, int, int)') [-Wincompatible-pointer-types]
                .propose_size = ui__Group_propose_size,
                                ^~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5152:11: warning: incompatible pointer types initializing '_ui__Widget_size_fn' (aka 'struct multi_return_int_int (*)(void *)') with an expression of type 'multi_return_int_int (ui__Group *)' (aka 'struct multi_return_int_int (struct ui__Group *)') [-Wincompatible-pointer-types]
                .size = ui__Group_size,
                        ^~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5153:17: warning: incompatible pointer types initializing '_ui__Widget_is_focused_fn' (aka 'bool (*)(void *)') with an expression of type 'bool (ui__Group *)' (aka 'bool (struct ui__Group *)') [-Wincompatible-pointer-types]
                .is_focused = ui__Group_is_focused,
                              ^~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:5862:90: warning: incompatible function pointer types passing 'bool (*)(voidptr, voidptr)' (aka 'bool (*)(void *, void *)') to parameter of type 'MapEqFn' (aka 'int (*)(void *, void *)') [-Wincompatible-function-pointer-types]
        map_string_int first_bigrams = new_map_2(sizeof(string), sizeof(int), &map_hash_string, &map_eq_string, &map_clone_string, &map_free_string);
                                                                                                ^~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:3410:74: note: passing argument to parameter 'key_eq_fn' here
map new_map_2(int key_bytes, int value_bytes, MapHashFn hash_fn, MapEqFn key_eq_fn, MapCloneFn clone_fn, MapFreeFn free_fn);
                                                                         ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:12656:86: warning: incompatible function pointer types passing 'bool (*)(voidptr, voidptr)' (aka 'bool (*)(void *, void *)') to parameter of type 'MapEqFn' (aka 'int (*)(void *, void *)') [-Wincompatible-function-pointer-types]
        map_string_string res = new_map_2(sizeof(string), sizeof(string), &map_hash_string, &map_eq_string, &map_clone_string, &map_free_string);
                                                                                            ^~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:10091:74: note: passing argument to parameter 'key_eq_fn' here
map new_map_2(int key_bytes, int value_bytes, MapHashFn hash_fn, MapEqFn key_eq_fn, MapCloneFn clone_fn, MapFreeFn free_fn) {
                                                                         ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16259:10: warning: initializing 'byteptr' (aka 'unsigned char *') with an expression of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        byteptr utf8_clip = darwin_get_pasteboard_text(cb->pb);
                ^           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16276:23: warning: passing 'byteptr' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        res.data = stbi_load(path.str, &res.width, &res.height, &res.nr_channels, flag);
                             ^~~~~~~~
/Users/avioli/repos/v/thirdparty/stb_image/stb_image.h:400:52: note: passing argument to parameter 'filename' here
STBIDEF stbi_uc *stbi_load            (char const *filename, int *x, int *y, int *channels_in_file, int desired_channels);
                                                   ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16339:30: warning: passing 'byteptr' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        return fonsGetFontByName(s, name);
                                    ^~~~
/Users/avioli/repos/v/thirdparty/fontstash/fontstash.h:955:51: note: passing argument to parameter 'name' here
int fonsGetFontByName(FONScontext* s, const char* name)
                                                  ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16349:27: warning: passing 'byteptr' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        return fonsAddFontMem(s, name, data, data_size, free_data);
                                 ^~~~
/Users/avioli/repos/v/thirdparty/fontstash/fontstash.h:912:52: note: passing argument to parameter 'name' here
int fonsAddFontMem(FONScontext* stash, const char* name, unsigned char* data, int dataSize, int freeData)
                                                   ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16399:31: warning: passing 'byteptr' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        return fonsDrawText(s, x, y, str, end);
                                     ^~~
/Users/avioli/repos/v/thirdparty/fontstash/fontstash.h:1272:20: note: passing argument to parameter 'str' here
                                   const char* str, const char* end)
                                               ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16399:36: warning: passing 'byteptr' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        return fonsDrawText(s, x, y, str, end);
                                          ^~~
/Users/avioli/repos/v/thirdparty/fontstash/fontstash.h:1272:37: note: passing argument to parameter 'end' here
                                   const char* str, const char* end)
                                                                ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16404:33: warning: passing 'byteptr' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        return fonsTextBounds(s, x, y, str, end, bounds);
                                       ^~~
/Users/avioli/repos/v/thirdparty/fontstash/fontstash.h:1456:19: note: passing argument to parameter 'str' here
                                         const char* str, const char* end,
                                                     ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16404:38: warning: passing 'byteptr' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        return fonsTextBounds(s, x, y, str, end, bounds);
                                            ^~~
/Users/avioli/repos/v/thirdparty/fontstash/fontstash.h:1456:36: note: passing argument to parameter 'end' here
                                         const char* str, const char* end,
                                                                      ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16419:41: warning: passing 'byteptr' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        return fonsTextIterInit(s, iter, x, y, str, end);
                                               ^~~
/Users/avioli/repos/v/thirdparty/fontstash/fontstash.h:1335:37: note: passing argument to parameter 'str' here
                                         float x, float y, const char* str, const char* end)
                                                                       ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16419:46: warning: passing 'byteptr' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        return fonsTextIterInit(s, iter, x, y, str, end);
                                                    ^~~
/Users/avioli/repos/v/thirdparty/fontstash/fontstash.h:1335:54: note: passing argument to parameter 'end' here
                                         float x, float y, const char* str, const char* end)
                                                                                        ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16429:9: warning: returning 'const unsigned char *' from a function with result type 'byteptr' (aka 'unsigned char *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
        return fonsGetTextureData(s, width, height);
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16628:9: warning: implicit conversion from enumeration type 'sg_backend' (aka 'enum sg_backend') to different enumeration type 'sokol__gfx__Backend' [-Wenum-conversion]
        return sg_query_backend();
        ~~~~~~ ^~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16643:30: warning: implicit conversion from enumeration type 'sokol__gfx__PixelFormat' to different enumeration type 'sg_pixel_format' (aka 'enum sg_pixel_format') [-Wenum-conversion]
        return sg_query_pixelformat(fmt);
               ~~~~~~~~~~~~~~~~~~~~ ^~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16698:34: warning: incompatible pointer types passing 'struct sg_buffer *' to parameter of type 'const sg_buffer_desc *' (aka 'const struct sg_buffer_desc *') [-Wincompatible-pointer-types]
        return sg_query_buffer_defaults(desc);
                                        ^~~~
/Users/avioli/repos/v/thirdparty/sokol/sokol_gfx.h:14794:78: note: passing argument to parameter 'desc' here
SOKOL_API_IMPL sg_buffer_desc sg_query_buffer_defaults(const sg_buffer_desc* desc) {
                                                                             ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16703:33: warning: incompatible pointer types passing 'struct sg_image *' to parameter of type 'const sg_image_desc *' (aka 'const struct sg_image_desc *') [-Wincompatible-pointer-types]
        return sg_query_image_defaults(desc);
                                       ^~~~
/Users/avioli/repos/v/thirdparty/sokol/sokol_gfx.h:14799:75: note: passing argument to parameter 'desc' here
SOKOL_API_IMPL sg_image_desc sg_query_image_defaults(const sg_image_desc* desc) {
                                                                          ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16708:34: warning: incompatible pointer types passing 'struct sg_shader *' to parameter of type 'const sg_shader_desc *' (aka 'const struct sg_shader_desc *') [-Wincompatible-pointer-types]
        return sg_query_shader_defaults(desc);
                                        ^~~~
/Users/avioli/repos/v/thirdparty/sokol/sokol_gfx.h:14804:78: note: passing argument to parameter 'desc' here
SOKOL_API_IMPL sg_shader_desc sg_query_shader_defaults(const sg_shader_desc* desc) {
                                                                             ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16713:36: warning: incompatible pointer types passing 'struct sg_pipeline *' to parameter of type 'const sg_pipeline_desc *' (aka 'const struct sg_pipeline_desc *') [-Wincompatible-pointer-types]
        return sg_query_pipeline_defaults(desc);
                                          ^~~~
/Users/avioli/repos/v/thirdparty/sokol/sokol_gfx.h:14809:84: note: passing argument to parameter 'desc' here
SOKOL_API_IMPL sg_pipeline_desc sg_query_pipeline_defaults(const sg_pipeline_desc* desc) {
                                                                                   ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16718:32: warning: incompatible pointer types passing 'struct sg_pass *' to parameter of type 'const sg_pass_desc *' (aka 'const struct sg_pass_desc *') [-Wincompatible-pointer-types]
        return sg_query_pass_defaults(desc);
                                      ^~~~
/Users/avioli/repos/v/thirdparty/sokol/sokol_gfx.h:14814:72: note: passing argument to parameter 'desc' here
SOKOL_API_IMPL sg_pass_desc sg_query_pass_defaults(const sg_pass_desc* desc) {
                                                                       ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16765:18: warning: assigning to 'const char *' from 'byteptr' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
        desc->vs.source = src.str;
                        ^ ~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16770:18: warning: assigning to 'const char *' from 'byteptr' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
        desc->fs.source = src.str;
                        ^ ~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16775:30: warning: assigning to 'const char *' from 'byteptr' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
        desc->vs.images[index].name = name.str;
                                    ^ ~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16776:32: warning: implicit conversion from enumeration type 'sokol__gfx__ImageType' to different enumeration type 'sg_image_type' (aka 'enum sg_image_type') [-Wenum-conversion]
        desc->vs.images[index].type = sokol__gfx__ImageType__2d;
                                    ~ ^~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16781:30: warning: assigning to 'const char *' from 'byteptr' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
        desc->fs.images[index].name = name.str;
                                    ^ ~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16782:32: warning: implicit conversion from enumeration type 'sokol__gfx__ImageType' to different enumeration type 'sg_image_type' (aka 'enum sg_image_type') [-Wenum-conversion]
        desc->fs.images[index].type = sokol__gfx__ImageType__2d;
                                    ~ ^~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16797:68: warning: assigning to 'const char *' from 'byteptr' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
        desc->vs.uniform_blocks[block_index].uniforms[uniform_index].name = name.str;
                                                                          ^ ~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16798:70: warning: implicit conversion from enumeration type 'sokol__gfx__UniformType' to different enumeration type 'sg_uniform_type' (aka 'enum sg_uniform_type') [-Wenum-conversion]
        desc->vs.uniform_blocks[block_index].uniforms[uniform_index].type = type;
                                                                          ~ ^~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16803:68: warning: assigning to 'const char *' from 'byteptr' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
        desc->fs.uniform_blocks[block_index].uniforms[uniform_index].name = name.str;
                                                                          ^ ~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16804:70: warning: implicit conversion from enumeration type 'sokol__gfx__UniformType' to different enumeration type 'sg_uniform_type' (aka 'enum sg_uniform_type') [-Wenum-conversion]
        desc->fs.uniform_blocks[block_index].uniforms[uniform_index].type = type;
                                                                          ~ ^~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16813:27: warning: assigning to 'const char *' from 'byteptr' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
        desc->images[index].name = name.str;
                                 ^ ~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16814:29: warning: implicit conversion from enumeration type 'sokol__gfx__ImageType' to different enumeration type 'sg_image_type' (aka 'enum sg_image_type') [-Wenum-conversion]
        desc->images[index].type = sokol__gfx__ImageType__2d;
                                 ~ ^~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16866:139: warning: incompatible pointer types initializing 'const void *(*)(void)' with an expression of type 'voidptr ()' (aka 'void *()') [-Wincompatible-pointer-types]
        struct sg_mtl_context_desc mtl_desc = (struct sg_mtl_context_desc){.device = sokol__sapp__metal_get_device(),.renderpass_descriptor_cb = sokol__sapp__metal_get_renderpass_descriptor,.drawable_cb = sokol__sapp__metal_get_drawable,};
                                                                                                                                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16866:199: warning: incompatible pointer types initializing 'const void *(*)(void)' with an expression of type 'voidptr ()' (aka 'void *()') [-Wincompatible-pointer-types]
        struct sg_mtl_context_desc mtl_desc = (struct sg_mtl_context_desc){.device = sokol__sapp__metal_get_device(),.renderpass_descriptor_cb = sokol__sapp__metal_get_renderpass_descriptor,.drawable_cb = sokol__sapp__metal_get_drawable,};
                                                                                                                                                                                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16867:200: warning: incompatible pointer types initializing 'const void *(*)(void)' with an expression of type 'voidptr ()' (aka 'void *()') [-Wincompatible-pointer-types]
        struct sg_d3d11_context_desc d3d11_desc = (struct sg_d3d11_context_desc){.device = sokol__sapp__d3d11_get_device(),.device_context = sokol__sapp__d3d11_get_device_context(),.render_target_view_cb = sokol__sapp__d3d11_get_render_target_view,.depth_stencil_view_cb = sokol__sapp__d3d11_get_depth_stencil_view,};
                                                                                                                                                                                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16867:267: warning: incompatible pointer types initializing 'const void *(*)(void)' with an expression of type 'voidptr ()' (aka 'void *()') [-Wincompatible-pointer-types]
        struct sg_d3d11_context_desc d3d11_desc = (struct sg_d3d11_context_desc){.device = sokol__sapp__d3d11_get_device(),.device_context = sokol__sapp__d3d11_get_device_context(),.render_target_view_cb = sokol__sapp__d3d11_get_render_target_view,.depth_stencil_view_cb = sokol__sapp__d3d11_get_depth_stencil_view,};
                                                                                                                                                                                                                                                                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16953:28: warning: passing 'byteptr' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        sapp_set_clipboard_string(str);
                                  ^~~
/Users/avioli/repos/v/thirdparty/sokol/sokol_app.h:9498:59: note: passing argument to parameter 'str' here
SOKOL_API_IMPL void sapp_set_clipboard_string(const char* str) {
                                                          ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16958:9: warning: returning 'const char *' from a function with result type 'byteptr' (aka 'unsigned char *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
        return sapp_get_clipboard_string();
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16979:9: warning: returning 'const void *' from a function with result type 'voidptr' (aka 'void *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
        return sapp_metal_get_device();
               ^~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16984:9: warning: returning 'const void *' from a function with result type 'voidptr' (aka 'void *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
        return sapp_metal_get_renderpass_descriptor();
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16989:9: warning: returning 'const void *' from a function with result type 'voidptr' (aka 'void *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
        return sapp_metal_get_drawable();
               ^~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16994:9: warning: returning 'const void *' from a function with result type 'voidptr' (aka 'void *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
        return sapp_macos_get_window();
               ^~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:16999:9: warning: returning 'const void *' from a function with result type 'voidptr' (aka 'void *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
        return sapp_ios_get_window();
               ^~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:17004:9: warning: returning 'const void *' from a function with result type 'voidptr' (aka 'void *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
        return sapp_d3d11_get_device();
               ^~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:17009:9: warning: returning 'const void *' from a function with result type 'voidptr' (aka 'void *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
        return sapp_d3d11_get_device_context();
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:17014:9: warning: returning 'const void *' from a function with result type 'voidptr' (aka 'void *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
        return sapp_d3d11_get_render_target_view();
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:17019:9: warning: returning 'const void *' from a function with result type 'voidptr' (aka 'void *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
        return sapp_d3d11_get_depth_stencil_view();
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:17024:9: warning: returning 'const void *' from a function with result type 'voidptr' (aka 'void *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
        return sapp_win32_get_hwnd();
               ^~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:17029:9: warning: returning 'const void *' from a function with result type 'voidptr' (aka 'void *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
        return sapp_android_get_native_activity();
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:17033:108: warning: implicit conversion from enumeration type 'sapp_event_type' (aka 'enum sapp_event_type') to different enumeration type 'sokol__sapp__EventType' [-Wenum-conversion]
        return _STR("evt: frame_count=%"PRIu64"\000, type=%.*s", 2, e->frame_count, sokol__sapp__EventType_str(e->type));
                                                                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~^~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:17415:8: warning: extra tokens at end of #endif directive [-Wextra-tokens]
        #endif;
              ^
              //
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:17552:24: warning: incompatible pointer types initializing 'void (*)(const sapp_event *, void *)' (aka 'void (*)(const struct sapp_event *, void *)') with an expression of type 'void (struct sapp_event *, voidptr)' (aka 'void (struct sapp_event *, void *)') [-Wincompatible-pointer-types]
                .event_userdata_cb = gg__gg_event_fn,
                                     ^~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:17553:23: warning: incompatible pointer types initializing 'void (*)(const char *, void *)' with an expression of type 'void (charptr, voidptr)' (aka 'void (char *, void *)') [-Wincompatible-pointer-types]
                .fail_userdata_cb = gg__gg_fail_fn,
                                    ^~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:17561:19: warning: initializing 'const char *' with an expression of type 'byteptr' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
                .window_title = cfg.window_title.str,
                                ^~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:17565:24: warning: initializing 'const char *' with an expression of type 'byteptr' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
                .html5_canvas_name = cfg.window_title.str,
                                     ^~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:18021:12: warning: braces around scalar initializer [-Wbraced-scalar-init]
                .depth = {0},
                         ^~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:18036:12: warning: initializing 'const char *' with an expression of type 'byte *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
                .label = ((byte*)(0)),
                         ^~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:18028:13: warning: implicit conversion from enumeration type 'sokol__gfx__Wrap' to different enumeration type 'sg_wrap' (aka 'enum sg_wrap') [-Wenum-conversion]
                .wrap_u = sokol__gfx__Wrap_clamp_to_edge,
                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:18029:13: warning: implicit conversion from enumeration type 'sokol__gfx__Wrap' to different enumeration type 'sg_wrap' (aka 'enum sg_wrap') [-Wenum-conversion]
                .wrap_v = sokol__gfx__Wrap_clamp_to_edge,
                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:18251:52: warning: passing 'byteptr' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        fonsDrawText(ctx->ft->fons, x * scale, y * scale, text_.str, 0);
                                                          ^~~~~~~~~
/Users/avioli/repos/v/thirdparty/fontstash/fontstash.h:1272:20: note: passing argument to parameter 'str' here
                                   const char* str, const char* end)
                                               ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:18267:38: warning: passing 'byteptr' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        fonsTextBounds(ctx->ft->fons, 0, 0, s.str, 0, buf);
                                            ^~~~~
/Users/avioli/repos/v/thirdparty/fontstash/fontstash.h:1456:19: note: passing argument to parameter 'str' here
                                         const char* str, const char* end,
                                                     ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:18279:38: warning: passing 'byteptr' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        fonsTextBounds(ctx->ft->fons, 0, 0, s.str, 0, buf);
                                            ^~~~~
/Users/avioli/repos/v/thirdparty/fontstash/fontstash.h:1456:19: note: passing argument to parameter 'str' here
                                         const char* str, const char* end,
                                                     ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:18288:38: warning: passing 'byteptr' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        fonsTextBounds(ctx->ft->fons, 0, 0, s.str, 0, buf);
                                            ^~~~~
/Users/avioli/repos/v/thirdparty/fontstash/fontstash.h:1456:19: note: passing argument to parameter 'str' here
                                         const char* str, const char* end,
                                                     ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:18403:80: warning: incompatible pointer types passing 'void (ui__Button *, ui__MouseEvent *, ui__Window *)' (aka 'void (struct ui__Button *, struct ui__MouseEvent *, struct ui__Window *)') to parameter of type 'eventbus__EventHandlerFn' (aka 'void (*)(void *, void *, void *)') [-Wincompatible-pointer-types]
        eventbus__Subscriber_subscribe_method(subscriber, _const_ui__events.on_click, ui__btn_click, b);
                                                                                      ^~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:15236:107: note: passing argument to parameter 'handler' here
void eventbus__Subscriber_subscribe_method(eventbus__Subscriber* s, string name, eventbus__EventHandlerFn handler, voidptr receiver) {
                                                                                                          ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:18559:80: warning: incompatible pointer types passing 'void (ui__CheckBox *, ui__MouseEvent *, ui__Window *)' (aka 'void (struct ui__CheckBox *, struct ui__MouseEvent *, struct ui__Window *)') to parameter of type 'eventbus__EventHandlerFn' (aka 'void (*)(void *, void *, void *)') [-Wincompatible-pointer-types]
        eventbus__Subscriber_subscribe_method(subscriber, _const_ui__events.on_click, ui__cb_click, cb);
                                                                                      ^~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:15236:107: note: passing argument to parameter 'handler' here
void eventbus__Subscriber_subscribe_method(eventbus__Subscriber* s, string name, eventbus__EventHandlerFn handler, voidptr receiver) {
                                                                                                          ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:18648:80: warning: incompatible pointer types passing 'void (ui__Dropdown *, ui__MouseEvent *, voidptr)' (aka 'void (struct ui__Dropdown *, struct ui__MouseEvent *, void *)') to parameter of type 'eventbus__EventHandlerFn' (aka 'void (*)(void *, void *, void *)') [-Wincompatible-pointer-types]
        eventbus__Subscriber_subscribe_method(subscriber, _const_ui__events.on_click, ui__dd_click, dd);
                                                                                      ^~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:15236:107: note: passing argument to parameter 'handler' here
void eventbus__Subscriber_subscribe_method(eventbus__Subscriber* s, string name, eventbus__EventHandlerFn handler, voidptr receiver) {
                                                                                                          ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:18649:83: warning: incompatible pointer types passing 'void (ui__Dropdown *, ui__KeyEvent *, voidptr)' (aka 'void (struct ui__Dropdown *, struct ui__KeyEvent *, void *)') to parameter of type 'eventbus__EventHandlerFn' (aka 'void (*)(void *, void *, void *)') [-Wincompatible-pointer-types]
        eventbus__Subscriber_subscribe_method(subscriber, _const_ui__events.on_key_down, ui__dd_key_down, dd);
                                                                                         ^~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:15236:107: note: passing argument to parameter 'handler' here
void eventbus__Subscriber_subscribe_method(eventbus__Subscriber* s, string name, eventbus__EventHandlerFn handler, voidptr receiver) {
                                                                                                          ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:18650:85: warning: incompatible pointer types passing 'void (ui__Dropdown *, ui__MouseEvent *, voidptr)' (aka 'void (struct ui__Dropdown *, struct ui__MouseEvent *, void *)') to parameter of type 'eventbus__EventHandlerFn' (aka 'void (*)(void *, void *, void *)') [-Wincompatible-pointer-types]
        eventbus__Subscriber_subscribe_method(subscriber, _const_ui__events.on_mouse_move, ui__dd_mouse_move, dd);
                                                                                           ^~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:15236:107: note: passing argument to parameter 'handler' here
void eventbus__Subscriber_subscribe_method(eventbus__Subscriber* s, string name, eventbus__EventHandlerFn handler, voidptr receiver) {
                                                                                                          ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:19228:80: warning: incompatible pointer types passing 'void (ui__ListBox *, ui__MouseEvent *, ui__Window *)' (aka 'void (struct ui__ListBox *, struct ui__MouseEvent *, struct ui__Window *)') to parameter of type 'eventbus__EventHandlerFn' (aka 'void (*)(void *, void *, void *)') [-Wincompatible-pointer-types]
        eventbus__Subscriber_subscribe_method(subscriber, _const_ui__events.on_click, ui__on_click, lb);
                                                                                      ^~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:15236:107: note: passing argument to parameter 'handler' here
void eventbus__Subscriber_subscribe_method(eventbus__Subscriber* s, string name, eventbus__EventHandlerFn handler, voidptr receiver) {
                                                                                                          ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:19229:81: warning: incompatible pointer types passing 'void (ui__ListBox *, ui__KeyEvent *, ui__Window *)' (aka 'void (struct ui__ListBox *, struct ui__KeyEvent *, struct ui__Window *)') to parameter of type 'eventbus__EventHandlerFn' (aka 'void (*)(void *, void *, void *)') [-Wincompatible-pointer-types]
        eventbus__Subscriber_subscribe_method(subscriber, _const_ui__events.on_key_up, ui__on_key_up, lb);
                                                                                       ^~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:15236:107: note: passing argument to parameter 'handler' here
void eventbus__Subscriber_subscribe_method(eventbus__Subscriber* s, string name, eventbus__EventHandlerFn handler, voidptr receiver) {
                                                                                                          ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:19427:80: warning: incompatible pointer types passing 'void (ui__Picture *, ui__MouseEvent *, ui__Window *)' (aka 'void (struct ui__Picture *, struct ui__MouseEvent *, struct ui__Window *)') to parameter of type 'eventbus__EventHandlerFn' (aka 'void (*)(void *, void *, void *)') [-Wincompatible-pointer-types]
        eventbus__Subscriber_subscribe_method(subscriber, _const_ui__events.on_click, ui__pic_click, pic);
                                                                                      ^~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:15236:107: note: passing argument to parameter 'handler' here
void eventbus__Subscriber_subscribe_method(eventbus__Subscriber* s, string name, eventbus__EventHandlerFn handler, voidptr receiver) {
                                                                                                          ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:19580:80: warning: incompatible pointer types passing 'void (ui__Radio *, ui__MouseEvent *, voidptr)' (aka 'void (struct ui__Radio *, struct ui__MouseEvent *, void *)') to parameter of type 'eventbus__EventHandlerFn' (aka 'void (*)(void *, void *, void *)') [-Wincompatible-pointer-types]
        eventbus__Subscriber_subscribe_method(subscriber, _const_ui__events.on_click, ui__radio_click, r);
                                                                                      ^~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:15236:107: note: passing argument to parameter 'handler' here
void eventbus__Subscriber_subscribe_method(eventbus__Subscriber* s, string name, eventbus__EventHandlerFn handler, voidptr receiver) {
                                                                                                          ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:19746:80: warning: incompatible pointer types passing 'void (ui__Slider *, ui__MouseEvent *, voidptr)' (aka 'void (struct ui__Slider *, struct ui__MouseEvent *, void *)') to parameter of type 'eventbus__EventHandlerFn' (aka 'void (*)(void *, void *, void *)') [-Wincompatible-pointer-types]
        eventbus__Subscriber_subscribe_method(subscriber, _const_ui__events.on_click, ui__slider_click, s);
                                                                                      ^~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:15236:107: note: passing argument to parameter 'handler' here
void eventbus__Subscriber_subscribe_method(eventbus__Subscriber* s, string name, eventbus__EventHandlerFn handler, voidptr receiver) {
                                                                                                          ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:19747:83: warning: incompatible pointer types passing 'void (ui__Slider *, ui__KeyEvent *, voidptr)' (aka 'void (struct ui__Slider *, struct ui__KeyEvent *, void *)') to parameter of type 'eventbus__EventHandlerFn' (aka 'void (*)(void *, void *, void *)') [-Wincompatible-pointer-types]
        eventbus__Subscriber_subscribe_method(subscriber, _const_ui__events.on_key_down, ui__slider_key_down, s);
                                                                                         ^~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:15236:107: note: passing argument to parameter 'handler' here
void eventbus__Subscriber_subscribe_method(eventbus__Subscriber* s, string name, eventbus__EventHandlerFn handler, voidptr receiver) {
                                                                                                          ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:19748:85: warning: incompatible pointer types passing 'void (ui__Slider *, ui__MouseEvent *, voidptr)' (aka 'void (struct ui__Slider *, struct ui__MouseEvent *, void *)') to parameter of type 'eventbus__EventHandlerFn' (aka 'void (*)(void *, void *, void *)') [-Wincompatible-pointer-types]
        eventbus__Subscriber_subscribe_method(subscriber, _const_ui__events.on_mouse_move, ui__slider_mouse_move, s);
                                                                                           ^~~~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:15236:107: note: passing argument to parameter 'handler' here
void eventbus__Subscriber_subscribe_method(eventbus__Subscriber* s, string name, eventbus__EventHandlerFn handler, voidptr receiver) {
                                                                                                          ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:20181:80: warning: incompatible pointer types passing 'void (ui__Switch *, ui__MouseEvent *, ui__Window *)' (aka 'void (struct ui__Switch *, struct ui__MouseEvent *, struct ui__Window *)') to parameter of type 'eventbus__EventHandlerFn' (aka 'void (*)(void *, void *, void *)') [-Wincompatible-pointer-types]
        eventbus__Subscriber_subscribe_method(subscriber, _const_ui__events.on_click, ui__sw_click, s);
                                                                                      ^~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:15236:107: note: passing argument to parameter 'handler' here
void eventbus__Subscriber_subscribe_method(eventbus__Subscriber* s, string name, eventbus__EventHandlerFn handler, voidptr receiver) {
                                                                                                          ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:20250:80: warning: incompatible pointer types passing 'void (ui__TextBox *, ui__MouseEvent *, voidptr)' (aka 'void (struct ui__TextBox *, struct ui__MouseEvent *, void *)') to parameter of type 'eventbus__EventHandlerFn' (aka 'void (*)(void *, void *, void *)') [-Wincompatible-pointer-types]
        eventbus__Subscriber_subscribe_method(subscriber, _const_ui__events.on_click, ui__tb_click, tb);
                                                                                      ^~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:15236:107: note: passing argument to parameter 'handler' here
void eventbus__Subscriber_subscribe_method(eventbus__Subscriber* s, string name, eventbus__EventHandlerFn handler, voidptr receiver) {
                                                                                                          ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:20251:83: warning: incompatible pointer types passing 'void (ui__TextBox *, ui__KeyEvent *, ui__Window *)' (aka 'void (struct ui__TextBox *, struct ui__KeyEvent *, struct ui__Window *)') to parameter of type 'eventbus__EventHandlerFn' (aka 'void (*)(void *, void *, void *)') [-Wincompatible-pointer-types]
        eventbus__Subscriber_subscribe_method(subscriber, _const_ui__events.on_key_down, ui__tb_key_down, tb);
                                                                                         ^~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:15236:107: note: passing argument to parameter 'handler' here
void eventbus__Subscriber_subscribe_method(eventbus__Subscriber* s, string name, eventbus__EventHandlerFn handler, voidptr receiver) {
                                                                                                          ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:20252:81: warning: incompatible pointer types passing 'void (ui__TextBox *, ui__KeyEvent *, ui__Window *)' (aka 'void (struct ui__TextBox *, struct ui__KeyEvent *, struct ui__Window *)') to parameter of type 'eventbus__EventHandlerFn' (aka 'void (*)(void *, void *, void *)') [-Wincompatible-pointer-types]
        eventbus__Subscriber_subscribe_method(subscriber, _const_ui__events.on_key_up, ui__tb_key_up, tb);
                                                                                       ^~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:15236:107: note: passing argument to parameter 'handler' here
void eventbus__Subscriber_subscribe_method(eventbus__Subscriber* s, string name, eventbus__EventHandlerFn handler, voidptr receiver) {
                                                                                                          ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:20253:85: warning: incompatible pointer types passing 'void (ui__TextBox *, ui__MouseEvent *, voidptr)' (aka 'void (struct ui__TextBox *, struct ui__MouseEvent *, void *)') to parameter of type 'eventbus__EventHandlerFn' (aka 'void (*)(void *, void *, void *)') [-Wincompatible-pointer-types]
        eventbus__Subscriber_subscribe_method(subscriber, _const_ui__events.on_mouse_move, ui__tb_mouse_move, tb);
                                                                                           ^~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:15236:107: note: passing argument to parameter 'handler' here
void eventbus__Subscriber_subscribe_method(eventbus__Subscriber* s, string name, eventbus__EventHandlerFn handler, voidptr receiver) {
                                                                                                          ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:20997:14: warning: incompatible pointer types initializing 'gg__FNCb' (aka 'void (*)(void *)') with an expression of type 'void (ui__Window *)' (aka 'void (struct ui__Window *)') [-Wincompatible-pointer-types]
                .init_fn = ui__gg_init,
                           ^~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:20998:15: warning: incompatible pointer types initializing 'gg__FNCb' (aka 'void (*)(void *)') with an expression of type 'void (ui__Window *)' (aka 'void (struct ui__Window *)') [-Wincompatible-pointer-types]
                .frame_fn = ui__frame,
                            ^~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:21001:15: warning: incompatible pointer types initializing 'gg__FNEvent' (aka 'void (*)(void *, void *)') with an expression of type 'void (sokol__sapp__Event *, ui__Window *)' (aka 'void (struct sokol__sapp__Event *, struct ui__Window *)') [-Wincompatible-pointer-types]
                .event_fn = ui__on_event,
                            ^~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:21013:356: warning: incompatible function pointer types passing 'bool (*)(voidptr, voidptr)' (aka 'bool (*)(void *, void *)') to parameter of type 'MapEqFn' (aka 'int (*)(void *, void *)') [-Wincompatible-function-pointer-types]
        ui__UI* ui_ctx = (ui__UI*)memdup(&(ui__UI){.gg = gcontext,.window = ((voidptr)(0)),.show_cursor = 0,.last_type_time = 0,.cb_image = {0},.circle_image = {0},.radio_image = {0},.selected_radio_image = {0},.down_arrow = {0},.clipboard = clipboard__new(),.redraw_requested = 0,.resource_cache = new_map_2(sizeof(string), sizeof(gg__Image), &map_hash_string, &map_eq_string, &map_clone_string, &map_free_string),.closed = 0,.needs_refresh = true,.ticks = 0,}, sizeof(ui__UI));
                                                                                                                                                                                                                                                                                                                                                                          ^~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:10091:74: note: passing argument to parameter 'key_eq_fn' here
map new_map_2(int key_bytes, int value_bytes, MapHashFn hash_fn, MapEqFn key_eq_fn, MapCloneFn clone_fn, MapFreeFn free_fn) {
                                                                         ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:21270:24: warning: passing 'byteptr' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        sapp_set_window_title(title.str);
                              ^~~~~~~~~
/Users/avioli/repos/v/thirdparty/sokol/sokol_app.h:9531:55: note: passing argument to parameter 'title' here
SOKOL_API_IMPL void sapp_set_window_title(const char* title) {
                                                      ^
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:21349:1290: warning: incompatible pointer types initializing 'ui__ButtonClickFn' (aka 'void (*)(void *, void *)') with an expression of type 'void (main__State *, voidptr)' (aka 'void (struct main__State *, void *)') [-Wincompatible-pointer-types]
        })), I_ui__TextBox_to_Interface_ui__Widget(ui__textbox((ui__TextBoxConfig){.width = 200,.height = 22,.min = 0,.max = 0,.val = 0,.placeholder = _SLIT("Password"),.placeholder_bind = ((voidptr)(0)),.max_len = 20,.is_numeric = 0,.is_password = true,.read_only = 0,.is_multi = 0,.text = &app->password,.is_error = ((voidptr)(0)),.is_focused = 0,.borderless = 0,.on_key_down = 0,.on_key_up = 0,.on_change = 0,.on_enter = 0,.border_accentuated = 0,})), I_ui__CheckBox_to_Interface_ui__Widget(ui__checkbox((ui__CheckBoxConfig){.x = 0,.y = 0,.parent = {0},.text = _SLIT("Online registration"),.on_check_changed = 0,.checked = true,.disabled = 0,})), I_ui__CheckBox_to_Interface_ui__Widget(ui__checkbox((ui__CheckBoxConfig){.x = 0,.y = 0,.parent = {0},.text = _SLIT("Subscribe to the newsletter"),.on_check_changed = 0,.checked = 0,.disabled = 0,})), I_ui__Radio_to_Interface_ui__Widget(app->country), I_ui__Stack_to_Interface_ui__Widget(ui__row((ui__RowConfig){.height = 0,.alignment = 0,.spacing = 85,.stretch = 0,.margin = {0},.children = __new_array(0, 1, sizeof(ui__Widget)),}, new_array_from_c_array(2, 2, sizeof(ui__Widget), _MOV((ui__Widget[2]){I_ui__Button_to_Interface_ui__Widget(ui__button((ui__ButtonConfig){.text = _SLIT("Add user"),.icon_path = (string){.str=(byteptr)""},.onclick = main__btn_add_click,.height = 20,.width = 0,})), I_ui__Button_to_Interface_ui__Widget(ui__button((ui__ButtonConfig){.text = _SLIT("?"),.icon_path = (string){.str=(byteptr)""},.onclick = main__btn_help_click,.height = 20,.width = 0,}))})))), I_ui__Stack_to_Interface_ui__Widget(ui__row((ui__RowConfig){.height = 0,.alignment = ui__VerticalAlignment_center,.spacing = 5,.stretch = 0,.margin = {0},.children = __new_array(0, 1, sizeof(ui__Widget)),}, new_array_from_c_array(2, 2, sizeof(ui__Widget), _MOV((ui__Widget[2]){I_ui__ProgressBar_to_Interface_ui__Widget(app->pbar), I_ui__Label_to_Interface_ui__Widget(app->label)}))))})))), I_ui__Stack_to_Interface_ui__Widget(ui__column((ui__ColumnConfig){.width = 0,.alignment = ui__HorizontalAlignment_right,.spacing = 0,.stretch = true,.margin = {0},}, new_array_from_c_array(2, 2, sizeof(ui__Widget), _MOV((ui__Widget[2]){I_ui__Canvas_to_Interface_ui__Widget(ui__canvas((ui__CanvasConfig){.width = 0,.height = 275,.text = (string){.str=(byteptr)""},.draw_fn = main__canvas_draw,})), I_ui__Picture_to_Interface_ui__Widget(ui__picture((ui__PictureConfig){.path = os__resource_abs_path(_SLIT("logo.png")),.width = 100,.height = 100,.on_click = 0,.use_cache = true,.ref = ((voidptr)(0)),.image = {0},}))}))))})))), I_ui__Menu_to_Interface_ui__Widget(ui__menu((ui__MenuConfig){.text = (string){.str=(byteptr)""},.items = new_array_from_c_array(3, 3, sizeof(ui__MenuItem), _MOV((ui__MenuItem[3]){(ui__MenuItem){.text = _SLIT("Delete all users"),.action = main__menu_click,}, (ui__MenuItem){.text = _SLIT("Export users"),.action = main__menu_click,}, (ui__MenuItem){.text = _SLIT("Exit"),.action = main__menu_click,}})),}))})));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                ^~~~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:21349:2295: warning: incompatible pointer types initializing 'ui__DrawFn' (aka 'void (*)(struct gg__Context *, void *)') with an expression of type 'void (gg__Context *, main__State *)' (aka 'void (struct gg__Context *, struct main__State *)') [-Wincompatible-pointer-types]
        })), I_ui__TextBox_to_Interface_ui__Widget(ui__textbox((ui__TextBoxConfig){.width = 200,.height = 22,.min = 0,.max = 0,.val = 0,.placeholder = _SLIT("Password"),.placeholder_bind = ((voidptr)(0)),.max_len = 20,.is_numeric = 0,.is_password = true,.read_only = 0,.is_multi = 0,.text = &app->password,.is_error = ((voidptr)(0)),.is_focused = 0,.borderless = 0,.on_key_down = 0,.on_key_up = 0,.on_change = 0,.on_enter = 0,.border_accentuated = 0,})), I_ui__CheckBox_to_Interface_ui__Widget(ui__checkbox((ui__CheckBoxConfig){.x = 0,.y = 0,.parent = {0},.text = _SLIT("Online registration"),.on_check_changed = 0,.checked = true,.disabled = 0,})), I_ui__CheckBox_to_Interface_ui__Widget(ui__checkbox((ui__CheckBoxConfig){.x = 0,.y = 0,.parent = {0},.text = _SLIT("Subscribe to the newsletter"),.on_check_changed = 0,.checked = 0,.disabled = 0,})), I_ui__Radio_to_Interface_ui__Widget(app->country), I_ui__Stack_to_Interface_ui__Widget(ui__row((ui__RowConfig){.height = 0,.alignment = 0,.spacing = 85,.stretch = 0,.margin = {0},.children = __new_array(0, 1, sizeof(ui__Widget)),}, new_array_from_c_array(2, 2, sizeof(ui__Widget), _MOV((ui__Widget[2]){I_ui__Button_to_Interface_ui__Widget(ui__button((ui__ButtonConfig){.text = _SLIT("Add user"),.icon_path = (string){.str=(byteptr)""},.onclick = main__btn_add_click,.height = 20,.width = 0,})), I_ui__Button_to_Interface_ui__Widget(ui__button((ui__ButtonConfig){.text = _SLIT("?"),.icon_path = (string){.str=(byteptr)""},.onclick = main__btn_help_click,.height = 20,.width = 0,}))})))), I_ui__Stack_to_Interface_ui__Widget(ui__row((ui__RowConfig){.height = 0,.alignment = ui__VerticalAlignment_center,.spacing = 5,.stretch = 0,.margin = {0},.children = __new_array(0, 1, sizeof(ui__Widget)),}, new_array_from_c_array(2, 2, sizeof(ui__Widget), _MOV((ui__Widget[2]){I_ui__ProgressBar_to_Interface_ui__Widget(app->pbar), I_ui__Label_to_Interface_ui__Widget(app->label)}))))})))), I_ui__Stack_to_Interface_ui__Widget(ui__column((ui__ColumnConfig){.width = 0,.alignment = ui__HorizontalAlignment_right,.spacing = 0,.stretch = true,.margin = {0},}, new_array_from_c_array(2, 2, sizeof(ui__Widget), _MOV((ui__Widget[2]){I_ui__Canvas_to_Interface_ui__Widget(ui__canvas((ui__CanvasConfig){.width = 0,.height = 275,.text = (string){.str=(byteptr)""},.draw_fn = main__canvas_draw,})), I_ui__Picture_to_Interface_ui__Widget(ui__picture((ui__PictureConfig){.path = os__resource_abs_path(_SLIT("logo.png")),.width = 100,.height = 100,.on_click = 0,.use_cache = true,.ref = ((voidptr)(0)),.image = {0},}))}))))})))), I_ui__Menu_to_Interface_ui__Widget(ui__menu((ui__MenuConfig){.text = (string){.str=(byteptr)""},.items = new_array_from_c_array(3, 3, sizeof(ui__MenuItem), _MOV((ui__MenuItem[3]){(ui__MenuItem){.text = _SLIT("Delete all users"),.action = main__menu_click,}, (ui__MenuItem){.text = _SLIT("Export users"),.action = main__menu_click,}, (ui__MenuItem){.text = _SLIT("Exit"),.action = main__menu_click,}})),}))})));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             ^~~~~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:21541:62: warning: incompatible function pointer types passing 'bool (*)(voidptr, voidptr)' (aka 'bool (*)(void *, void *)') to parameter of type 'MapEqFn' (aka 'int (*)(void *, void *)') [-Wincompatible-function-pointer-types]
        _const_gx__string_colors = new_map_init_2(&map_hash_string, &map_eq_string, &map_clone_string, &map_free_string, 3, sizeof(string), sizeof(gx__Color), _MOV((string[3]){_SLIT("black"), _SLIT("blue"), _SLIT("red"), }), _MOV((gx__Color[3]){_const_gx__black, _const_gx__blue, _const_gx__red, }));
                                                                    ^~~~~~~~~~~~~~
/var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/v/users.11530666916124205342.tmp.c:10112:47: note: passing argument to parameter 'key_eq_fn' here
map new_map_init_2(MapHashFn hash_fn, MapEqFn key_eq_fn, MapCloneFn clone_fn, MapFreeFn free_fn, int n, int key_bytes, int value_bytes, voidptr keys, voidptr values) {
                                              ^
255 warnings generated.
 "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" -demangle -export_dynamic -lto_library /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/libLTO.dylib -no_deduplicate -dynamic -arch x86_64 -macosx_version_min 10.7.0 -syslibroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk -o /Users/avioli/repos/v-ui/examples/users -lcrt1.10.6.o /Users/avioli/.vmodules/cache/e7/e7e0a8f8f54b6aaa50af58dd2f3f958c.o /var/folders/ng/g1gcdysd7jbbz1fwr38zqw3m0000gn/T/users-9d22e7.o -framework Cocoa -framework Metal -framework Cocoa -framework MetalKit -framework QuartzCore -L/usr/local/lib -force_load /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/arc/libarclite_macosx.a -framework Foundation -lobjc -lSystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/11.0.0/lib/darwin/libclang_rt.osx.a
Undefined symbols for architecture x86_64:
  "_objc_loadClassref", referenced from:
      __ARCLite__load() in libarclite_macosx.a(arclite.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
builder error: 
==================
C error. This should never happen.

If you were not working with C interop, please raise an issue on GitHub:

https://github.com/vlang/v/issues/new/choose

You can also use #help on Discord: https://discord.gg/vlang

--

`v doctor` output
OS: macos, Mac OS X, 10.14.6, 18G7016
Processor: 8 cpus, 64bit, little endian, Intel(R) Core(TM) i7-3720QM CPU @ 2.60GHz
CC version: Apple clang version 11.0.0 (clang-1100.0.33.17)

getwd: /Users/avioli/repos/v-ui/examples
vmodules: /Users/avioli/.vmodules
vroot: /Users/avioli/repos/v
vexe: /Users/avioli/repos/v/v
vexe mtime: 2021-01-05 22:56:41
is vroot writable: true
is vmodules writable: true
V full version: V 0.2.1 e219f95

Git version: git version 2.29.2
Git vroot status: 0.2-317-ge219f954
.git/config present: true
thirdparty/tcc status: thirdparty-macos-amd64 689c8a02