vacp2p / nim-quic

QUIC for Nim
40 stars 3 forks source link

chore: add support for Nim 2 #51

Closed diegomrsantos closed 1 month ago

diegomrsantos commented 2 months ago

fixes https://github.com/vacp2p/nim-quic/issues/43

diegomrsantos commented 1 month ago

The refc memory management is necessary to fix this issue:

/home/runner/.cache/nim/directchat_d/@m..@snim@slib@ssystem.nim.c: In function ‘reset__OOZnimbledepsZpkgs50Zquic4548O49O4845e5049c555148afaddec52ae53c50524956ad5051dc555756c53f4856e55eZquicZtransportZquicconnection_u967’:
/home/runner/.cache/nim/directchat_d/@m..@snim@slib@ssystem.nim.c:13830:232: error: incompatible type for argument 1 of ‘eqdestroy___OOZnimbledepsZpkgs50Zquic4548O49O4845e5049c555148afaddec52ae53c50524956ad5051dc555756c53f4856e55eZquicZtransportZconnectionid_u68’
13830 |         nimlf_(947, "/home/runner/work/nim-libp2p/nim-libp2p/nim/lib/system.nim");      eqdestroy___OOZnimbledepsZpkgs50Zquic4548O49O4845e5049c555148afaddec52ae53c50524956ad5051dc555756c53f4856e55eZquicZtransportZconnectionid_u68((*obj_p0));
      |                                                                                                                                                                                                                                       ~^~~~~~~~
      |                                                                                                                                                                                                                                        |
      |                                                                                                                                                                                                                                        tySequence__6H5Oh5UUvVCLiakt9aTwtUQ
/home/runner/.cache/nim/directchat_d/@m..@snim@slib@ssystem.nim.c:3719:211: note: expected ‘tySequence__6H5Oh5UUvVCLiakt9aTwtUQ *’ but argument is of type ‘tySequence__6H5Oh5UUvVCLiakt9aTwtUQ’
 3719 | N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___OOZnimbledepsZpkgs50Zquic4548O49O4845e5049c555148afaddec52ae53c50524956ad5051dc555756c53f4856e55eZquicZtransportZconnectionid_u68)(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* dest_p0);
      |                                                                                                                                                                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
Error: execution of an external compiler program 'gcc -c  -w -fmax-errors=3 -pthread -I/home/runner/work/nim-libp2p/nim-libp2p/nimbledeps/pkgs2/bearssl-0.2.5-550e6f9321b85de53bba9c0ffab9c95ffbe12ab3/bearssl/abi -I/home/runner/work/nim-libp2p/nim-libp2p/nimbledeps/pkgs2/bearssl-0.2.5-550e6f9321b85de53bba9c0ffab9c95ffbe12ab3/bearssl/abi/../csources/src/ -I/home/runner/work/nim-libp2p/nim-libp2p/nimbledeps/pkgs2/bearssl-0.2.5-550e6f9321b85de53bba9c0ffab9c95ffbe12ab3/bearssl/abi/../csources/inc/ -I/home/runner/work/nim-libp2p/nim-libp2p/nimbledeps/pkgs2/bearssl-0.2.5-550e6f9321b85de53bba9c0ffab9c95ffbe12ab3/bearssl/abi/../csources/tools/ -DBR_USE_UNIX_TIME=1 -DBR_USE_URANDOM=1 -DBR_LE_UNALIGNED=1 -DBR_64=1  -DBR_amd64=1 -DBR_INT128=1 -DHAVE_UNISTD_H -I/home/runner/work/nim-libp2p/nim-libp2p/nimbledeps/pkgs2/ngtcp2-0.34.0-78451f5a9efaa03df64d1f62f2a4037c52b0f7c8/sources/lib/includes -I/home/runner/work/nim-libp2p/nim-libp2p/nimbledeps/pkgs2/ngtcp2-0.34.0-78451f5a9efaa03df64d1f62f2a4037c52b0f7c8/build/lib/includes -DNGTCP2_STATICLIB -I./sources/lib/includes -I./build/lib/includes -O3 -fno-strict-aliasing -fno-ident -fno-math-errno   -I/home/runner/work/nim-libp2p/nim-libp2p/nim/lib -I/home/runner/work/nim-libp2p/nim-libp2p/examples -o /home/runner/.cache/nim/directchat_d/@m..@snim@slib@ssystem.nim.c.o /home/runner/.cache/nim/directchat_d/@m..@snim@slib@ssystem.nim.c' failed with exit code: 1

It seems that a wrong destructor is generated without it.