Thread (34 messages) 34 messages, 4 authors, 2025-05-29

Re: [PATCH v10 4/5] rust: replace `kernel::c_str!` with C-Strings

From: Tamir Duberstein <hidden>
Date: 2025-05-29 22:22:11
Also in: dri-devel, linux-block, linux-devicetree, linux-kselftest, linux-pci, lkml, llvm, nouveau, rust-for-linux

On Wed, May 28, 2025 at 11:35 AM Benno Lossin [off-list ref] wrote:
On Wed May 28, 2025 at 12:36 PM CEST, Alice Ryhl wrote:
quoted
On Mon, May 26, 2025 at 06:29:46PM -0400, Tamir Duberstein wrote:
quoted
On Mon, May 26, 2025 at 11:04 AM Benno Lossin [off-list ref] wrote:
quoted
On Sat May 24, 2025 at 10:33 PM CEST, Tamir Duberstein wrote:
quoted
+macro_rules! c_str_avoid_literals {
I don't like this name, how about `concat_to_c_str` or
`concat_with_nul`?

This macro also is useful from macros that have a normal string literal,
but can't turn it into a `c""` one.
Uh, can you give an example? I'm not attached to the name.
I also think it should be renamed. Right now it sounds like it creates a
c string while avoiding literals in the input ... whatever that means.
Yeah that's a good way to put why the name is weird.
quoted
I like Benno's suggestions, but str_to_cstr! could also work?
Hmm, I think then people won't know that it can also concat? I don't
think it matters too much, the macro probably won't be used that often
and if someone needs to use it, they probably wouldn't fine it by name
alone.
What do you mean by "it can also concat"? This macro by itself doesn't
concat, it takes only a single expr. The example in the docs
illustrates:

    const MY_CSTR: &CStr = c_str_avoid_literals!(concat!(...));

I think str_to_cstr is ok - I'll do that in v11.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help