Conversation
ThePixelGamer
left a comment
There was a problem hiding this comment.
Sorry for the late review!
| Result Initialize(void* pool, ulong poolSize, ulong allocPoolSize, int concurLimit); | ||
| Result Finalize(); | ||
| s32 SetSockOpt(s32 socket, s32 socketLevel, s32 option, const void*, u32 len); | ||
| s32 Poll(pollfd *fds, unsigned long nfds, s32 timeout); |
There was a problem hiding this comment.
Can the unsigned long just be nfds_t as to match how poll is done in UNIX
https://man7.org/linux/man-pages/man2/poll.2.html
There was a problem hiding this comment.
@ThePixelGamer no, the mangled name won't link if you use nfds_t, i tried
There was a problem hiding this comment.
mangled name? the type should exist seeing how you're including poll.h, am I missing something?
There was a problem hiding this comment.
Also, nfds_t is a typedef so it won't even show up in the mangled symbol.
There was a problem hiding this comment.
@leoetlino it's typedefed as an unsigned int and not an unsigned long, so the mangled name changes
There was a problem hiding this comment.
musl (which is the libc NintendoSDK uses) typedefs it to an unsigned long.
There was a problem hiding this comment.
@leoetlino i tried, and it seemed to mangle it as j and not m. not sure why
There was a problem hiding this comment.
::= j # unsigned int
::= l # long
::= m # unsigned long
Sounds like your header include path is set up incorrectly and you might be using your host system's poll.h (which typedefs it to unsigned int?) rather than the one from musl.
This change is