Re: [PATCH] tools/start-vmm: Add additional warning options

Alyssa Ross
2025-09-21T08:56:19Z

[-- Attachment #1: Type: text/plain, Size: 1671 bytes --]

Demi Marie Obenour <demiobenour@gmail.com> writes:

> On 9/19/25 07:55, Alyssa Ross wrote:
>> Demi Marie Obenour <demiobenour@gmail.com> writes:
>>
>>> This detected a missing prototype.
>>>
>>> No functional change.
>>>
>>> Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
>>> ---
>>> tools/meson.build | 2 ++
>>> tools/start-vmm/ch.h | 1 +
>>> 2 files changed, 3 insertions(+)
>>>
>>> diff --git a/tools/meson.build b/tools/meson.build
>>> index 9cebd03e323531fca7600cacf120161a98de16c5..8262f3e01d7bd56561306d7dd4650a22ca40ebe7 100644
>>> --- a/tools/meson.build
>>> +++ b/tools/meson.build
>>> @@ -9,6 +9,8 @@ project('spectrum-tools', 'c',
>>> })
>>>
>>> add_project_arguments('-Wno-error=attributes', language : 'c')
>>> +add_project_arguments('-Werror=missing-prototypes', language : 'c')
>>> +add_project_arguments('-Werror=missing-declarations', language : 'c')
>>>
>>> if get_option('host')
>>> add_languages('rust')
>>> diff --git a/tools/start-vmm/ch.h b/tools/start-vmm/ch.h
>>> index 7230913ef0abf41a4f712ac4a543c7f7fdecec0f..5431365e6e2894cdebae22a9a44e2ccf1222e0d2 100644
>>> --- a/tools/start-vmm/ch.h
>>> +++ b/tools/start-vmm/ch.h
>>> @@ -8,3 +8,4 @@ struct net_config {
>>> char id[18];
>>> uint8_t mac[6];
>>> };
>>> +struct net_config net_setup(const char name[static 1], int name_len);
>>
>> Why do we need to declare this in a C header? It's only used from Rust.
>
> Ideally the Rust declarations would be generated from the C ones
> using bindgen. Also, this catches genuine bugs on the C side.

What bugs? Implicit definitions are already disallowed, aren't they?

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 227 bytes --]