fix(transport): libp2p compilation in Nim version-2-0 and devel (#1186)
For example: ``` /Users/runner/work/nim-libp2p/nim-libp2p/nimbledeps/pkgs2/websock-0.1.0-94f836ae589056b2deb04bdfdcd614fff80adaf5/websock/http/client.nim(173, 5) template/generic instantiation of `async` from here /Users/runner/work/nim-libp2p/nim-libp2p/nimbledeps/pkgs2/websock-0.1.0-94f836ae589056b2deb04bdfdcd614fff80adaf5/websock/http/client.nim(165, 1) Warning: The raises pragma doesn't work on async procedures - use `async: (raises: [...]) instead. [User] /Users/runner/work/nim-libp2p/nim-libp2p/nimbledeps/pkgs2/websock-0.1.0-94f836ae589056b2deb04bdfdcd614fff80adaf5/websock/websock.nim(257, 5) template/generic instantiation of `async` from here /Users/runner/work/nim-libp2p/nim-libp2p/nimbledeps/pkgs2/websock-0.1.0-94f836ae589056b2deb04bdfdcd614fff80adaf5/websock/websock.nim(251, 1) Warning: The raises pragma doesn't work on async procedures - use `async: (raises: [...]) instead. [User] /Users/runner/work/nim-libp2p/nim-libp2p/libp2p/transports/wstransport.nim(77, 18) template/generic instantiation of `async` from here /Users/runner/work/nim-libp2p/nim-libp2p/libp2p/transports/wstransport.nim(83, 10) template/generic instantiation of `setResult` from here /Users/runner/work/nim-libp2p/nim-libp2p/libp2p/transports/wstransport.nim(78, 26) template/generic instantiation of `mapExceptions` from here /Users/runner/work/nim-libp2p/nim-libp2p/nimbledeps/pkgs2/chronos-4.0.2-c5e9517b9189713210e2abab8b77a68da71ded12/chronos/internal/asyncmacro.nim(542, 60) Error: expression 'value(cast[type(recv(s.session, pbytes, nbytes))](chronosInternalRetFuture.internalChild))' is of type 'int' and has to be used (or discarded); start of expression here: /Users/runner/work/nim-libp2p/nim-libp2p/libp2p/transports/wstransport.nim(78, 26) stack trace: (most recent call last) ``` from https://github.com/vacp2p/nim-libp2p/actions/runs/10655841970/job/29533846606?pr=1145 For minimal example of this: ```nim template g(body: untyped) = try: body except CatchableError: raise newException(CatchableError, "") discard g(0) ``` Also, even in 2.0.8, a variation doesn't work: ``` template g(body: untyped) = body discard g(0) ```
This commit is contained in:
parent
c6e8fadbda
commit
a1811e7395
|
@ -56,7 +56,7 @@ proc new*(
|
||||||
stream.initStream()
|
stream.initStream()
|
||||||
return stream
|
return stream
|
||||||
|
|
||||||
template mapExceptions(body: untyped) =
|
template mapExceptions(body: untyped): untyped =
|
||||||
try:
|
try:
|
||||||
body
|
body
|
||||||
except AsyncStreamIncompleteError:
|
except AsyncStreamIncompleteError:
|
||||||
|
|
Loading…
Reference in New Issue