lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <175796317609.265653.2867794592544924823.b4-ty@kernel.dk>
Date: Mon, 15 Sep 2025 13:06:16 -0600
From: Jens Axboe <axboe@...nel.dk>
To: Ammar Faizi <ammarfaizi2@...weeb.org>
Cc: Linux Kernel Mailing List <linux-kernel@...r.kernel.org>, 
 io-uring Mailing List <io-uring@...r.kernel.org>, 
 Alviro Iskandar Setiawan <alviro.iskandar@...weeb.org>, 
 Bart Van Assche <bvanassche@....org>, dr.xiaosa@...il.com
Subject: Re: [PATCH liburing] liburing.h: Support C++20 module export
 feature


On Sat, 13 Sep 2025 23:25:40 +0700, Ammar Faizi wrote:
> Having "static inline" functions in liburing header file results in
> compilation errors when using the new C++20 module export feature:
> 
>   In file included from src/work.cpp:3:
>   ./include/liburing.h:343:20: error: \
>     ‘void io_uring_cq_advance(io_uring*, unsigned int)’ \
>     exposes TU-local entity ‘void io_uring_smp_store_release(T*, T) [with T = unsigned int]’
>     343 | IOURINGINLINE void io_uring_cq_advance(struct io_uring *ring, unsigned nr)
>         |                    ^~~~~~~~~~~~~~~~~~~
>   In file included from ./include/liburing.h:20:
>   ./include/liburing/barrier.h:42:20: note: \
>     ‘void io_uring_smp_store_release(T*, T) [with T = unsigned int]’ is a \
>     specialization of TU-local template \
>     ‘template<class T> void io_uring_smp_store_release(T*, T)’
>     42 | static inline void io_uring_smp_store_release(T *p, T v)
>        |                    ^~~~~~~~~~~~~~~~~~~~~~~~~~
>   ./include/liburing/barrier.h:42:20: note: \
>     ‘template<class T> void io_uring_smp_store_release(T*, T)’ declared with internal linkage
> 
> [...]

Applied, thanks!

[1/1] liburing.h: Support C++20 module export feature
      commit: 5503c2b545709e1cf8484670aa7088a827f4818d

Best regards,
-- 
Jens Axboe




Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ