* Address MISRA C:2012 Rule 8.4
@ 2023-08-03 9:20 Nicola Vetrini
2023-08-04 0:35 ` Stefano Stabellini
0 siblings, 1 reply; 10+ messages in thread
From: Nicola Vetrini @ 2023-08-03 9:20 UTC (permalink / raw)
To: Xen-devel
Cc: Stefano Stabellini, Michal Orzel, xenia.ragiadakou,
Ayan Kumar Halder, consulting, Jan Beulich, Andrew Cooper,
Julien Grall, George Dunlap, Wei Liu
The headline of Rule 8.4 is as follows:
"A compatible declaration shall be visible when an object or
function with external linkage is defined".
Some functions reported in [1][2] are lacking a declaration in the
respective header files;
as remarked on xen-devel's IRC channel, this is ok since they are only
called from asm code (e.g., start_xen). A similar discussion
had taken place in the past (see [3]) and the general consensus was to
deviate these cases.
If that is still the case, a suitable project-wide deviation can be
added to address these violations.
[1]
https://saas.eclairit.com:3787/fs/var/local/eclair/XEN.ecdf/ECLAIR_normal/origin/staging/ARM64-Set1/210/PROJECT.ecd;/by_service/MC3R1.R8.4.html
[2]
https://saas.eclairit.com:3787/fs/var/local/eclair/XEN.ecdf/ECLAIR_normal/origin/staging/X86_64-Set1/210/PROJECT.ecd;/by_service/MC3R1.R8.4.html
[3]
https://lore.kernel.org/all/20220705210218.483854-2-burzalodowa@gmail.com/
Regards,
--
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Address MISRA C:2012 Rule 8.4
2023-08-03 9:20 Address MISRA C:2012 Rule 8.4 Nicola Vetrini
@ 2023-08-04 0:35 ` Stefano Stabellini
2023-08-04 9:47 ` Nicola Vetrini
0 siblings, 1 reply; 10+ messages in thread
From: Stefano Stabellini @ 2023-08-04 0:35 UTC (permalink / raw)
To: Nicola Vetrini
Cc: Xen-devel, Stefano Stabellini, Michal Orzel, xenia.ragiadakou,
Ayan Kumar Halder, consulting, Jan Beulich, Andrew Cooper,
Julien Grall, George Dunlap, Wei Liu
I think that's OK for me. My only concern is that we should track the
project-wide deviations properly somewhere besides the ECLAIR
configuration under xen.git which is ECLAIR specific. So far we used the
notes in docs/misra/rules.rst. I don't know if that sufficient, but we
could add a note for 8.4:
diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
index 8f0e4d3f25..5977bc9d5e 100644
--- a/docs/misra/rules.rst
+++ b/docs/misra/rules.rst
@@ -245,7 +245,8 @@ maintainers if you want to suggest a change.
- Required
- A compatible declaration shall be visible when an object or
function with external linkage is defined
- -
+ - No need for declarations when functions are only called from
+ assembly
* - `Rule 8.5 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_08_05_2.c>`_
- Required
On Thu, 3 Aug 2023, Nicola Vetrini wrote:
> The headline of Rule 8.4 is as follows:
> "A compatible declaration shall be visible when an object or
> function with external linkage is defined".
>
> Some functions reported in [1][2] are lacking a declaration in the respective
> header files;
> as remarked on xen-devel's IRC channel, this is ok since they are only called
> from asm code (e.g., start_xen). A similar discussion
> had taken place in the past (see [3]) and the general consensus was to deviate
> these cases.
> If that is still the case, a suitable project-wide deviation can be added to
> address these violations.
>
> [1]
> https://saas.eclairit.com:3787/fs/var/local/eclair/XEN.ecdf/ECLAIR_normal/origin/staging/ARM64-Set1/210/PROJECT.ecd;/by_service/MC3R1.R8.4.html
> [2]
> https://saas.eclairit.com:3787/fs/var/local/eclair/XEN.ecdf/ECLAIR_normal/origin/staging/X86_64-Set1/210/PROJECT.ecd;/by_service/MC3R1.R8.4.html
> [3] https://lore.kernel.org/all/20220705210218.483854-2-burzalodowa@gmail.com/
>
> Regards,
>
> --
> Nicola Vetrini, BSc
> Software Engineer, BUGSENG srl (https://bugseng.com)
>
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: Address MISRA C:2012 Rule 8.4
2023-08-04 0:35 ` Stefano Stabellini
@ 2023-08-04 9:47 ` Nicola Vetrini
2023-08-04 11:39 ` Jan Beulich
2023-08-04 14:00 ` Nicola Vetrini
0 siblings, 2 replies; 10+ messages in thread
From: Nicola Vetrini @ 2023-08-04 9:47 UTC (permalink / raw)
To: Stefano Stabellini
Cc: Xen-devel, Stefano Stabellini, Michal Orzel, xenia.ragiadakou,
Ayan Kumar Halder, consulting, Jan Beulich, Andrew Cooper,
Julien Grall, George Dunlap, Wei Liu
On 04/08/2023 02:35, Stefano Stabellini wrote:
> I think that's OK for me. My only concern is that we should track the
> project-wide deviations properly somewhere besides the ECLAIR
> configuration under xen.git which is ECLAIR specific. So far we used
> the
> notes in docs/misra/rules.rst. I don't know if that sufficient, but we
> could add a note for 8.4:
>
> diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
> index 8f0e4d3f25..5977bc9d5e 100644
> --- a/docs/misra/rules.rst
> +++ b/docs/misra/rules.rst
> @@ -245,7 +245,8 @@ maintainers if you want to suggest a change.
> - Required
> - A compatible declaration shall be visible when an object or
> function with external linkage is defined
> - -
> + - No need for declarations when functions are only called from
> + assembly
>
> * - `Rule 8.5
> <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_08_05_2.c>`_
> - Required
>
>
> On Thu, 3 Aug 2023, Nicola Vetrini wrote:
>> The headline of Rule 8.4 is as follows:
>> "A compatible declaration shall be visible when an object or
>> function with external linkage is defined".
>>
>> Some functions reported in [1][2] are lacking a declaration in the
>> respective
>> header files;
>> as remarked on xen-devel's IRC channel, this is ok since they are only
>> called
>> from asm code (e.g., start_xen). A similar discussion
>> had taken place in the past (see [3]) and the general consensus was to
>> deviate
>> these cases.
>> If that is still the case, a suitable project-wide deviation can be
>> added to
>> address these violations.
>>
>> [1]
>> https://saas.eclairit.com:3787/fs/var/local/eclair/XEN.ecdf/ECLAIR_normal/origin/staging/ARM64-Set1/210/PROJECT.ecd;/by_service/MC3R1.R8.4.html
>> [2]
>> https://saas.eclairit.com:3787/fs/var/local/eclair/XEN.ecdf/ECLAIR_normal/origin/staging/X86_64-Set1/210/PROJECT.ecd;/by_service/MC3R1.R8.4.html
>> [3]
>> https://lore.kernel.org/all/20220705210218.483854-2-burzalodowa@gmail.com/
>>
Upon further examination, I identified the following patterns:
1. Functions defined in .c called only from asm code (e.g., the already
mentioned __start_xen)
2. Functions/variables declared in a .h, defined in a .c that does not
include the .h with the declaration
(e.g., 'fill_console_start_info' is defined in 'xen/drivers/vga.c',
declared in 'xen/include/xen/console.h' which is not visible when
compiling the .c).
3. Variables that are either extern or not, such as 'acpi_gbl_FADT' in
'xen/include/acpi/acglobal.h', depending on
DEFINE_ACPI_GLOBALS
Below are the proposed resolution strategies:
1. I would advise to add the declaration in the relative .h, to support
automatic consistency checks with the
implementation and a quick reference when touching the asm.
2. To comply with the rule, the header with the declaration should be
included. Also note that there are some
corner cases, such as 'get_sec', which is used in 'cper.h' without
including 'time.h' (which should gain a
declaration for it).
3. One possible resolution pattern is including 'acglobal.h' twice
(either directly or indirectly trough acpi.h, if
the latter does not cause other issues) like so:
(assuming DEFINE_ACPI_GLOBALS is undefined here)
#include "acglobal.h"
#define DEFINE_ACPI_GLOBALS
#include "acglobal.h"
this way, the rule is followed properly, though it's not the prettiest
pattern and also clashes with the objectives
of D4.10 ("Precautions shall be taken in order to prevent the contents
of a header file being included
more than once"), but then a motivated exception is allowed there.
--
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Address MISRA C:2012 Rule 8.4
2023-08-04 9:47 ` Nicola Vetrini
@ 2023-08-04 11:39 ` Jan Beulich
2023-08-04 14:09 ` Nicola Vetrini
2023-08-04 20:40 ` Stefano Stabellini
2023-08-04 14:00 ` Nicola Vetrini
1 sibling, 2 replies; 10+ messages in thread
From: Jan Beulich @ 2023-08-04 11:39 UTC (permalink / raw)
To: Nicola Vetrini
Cc: Xen-devel, Stefano Stabellini, Michal Orzel, xenia.ragiadakou,
Ayan Kumar Halder, consulting, Andrew Cooper, Julien Grall,
George Dunlap, Wei Liu, Stefano Stabellini
On 04.08.2023 11:47, Nicola Vetrini wrote:
> Upon further examination, I identified the following patterns:
>
> 1. Functions defined in .c called only from asm code (e.g., the already
> mentioned __start_xen)
> 2. Functions/variables declared in a .h, defined in a .c that does not
> include the .h with the declaration
> (e.g., 'fill_console_start_info' is defined in 'xen/drivers/vga.c',
> declared in 'xen/include/xen/console.h' which is not visible when
> compiling the .c).
> 3. Variables that are either extern or not, such as 'acpi_gbl_FADT' in
> 'xen/include/acpi/acglobal.h', depending on
> DEFINE_ACPI_GLOBALS
>
> Below are the proposed resolution strategies:
>
> 1. I would advise to add the declaration in the relative .h, to support
> automatic consistency checks with the
> implementation and a quick reference when touching the asm.
That'll need discussing first.
> 2. To comply with the rule, the header with the declaration should be
> included. Also note that there are some
> corner cases, such as 'get_sec', which is used in 'cper.h' without
> including 'time.h' (which should gain a
> declaration for it).
This one of course wants fixing wherever found.
> 3. One possible resolution pattern is including 'acglobal.h' twice
> (either directly or indirectly trough acpi.h, if
> the latter does not cause other issues) like so:
>
> (assuming DEFINE_ACPI_GLOBALS is undefined here)
> #include "acglobal.h"
> #define DEFINE_ACPI_GLOBALS
> #include "acglobal.h"
>
> this way, the rule is followed properly, though it's not the prettiest
> pattern and also clashes with the objectives
> of D4.10 ("Precautions shall be taken in order to prevent the contents
> of a header file being included
> more than once"), but then a motivated exception is allowed there.
Not really sure about this one.
Jan
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Address MISRA C:2012 Rule 8.4
2023-08-04 9:47 ` Nicola Vetrini
2023-08-04 11:39 ` Jan Beulich
@ 2023-08-04 14:00 ` Nicola Vetrini
2023-08-07 7:34 ` Jan Beulich
1 sibling, 1 reply; 10+ messages in thread
From: Nicola Vetrini @ 2023-08-04 14:00 UTC (permalink / raw)
To: Stefano Stabellini
Cc: Xen-devel, Stefano Stabellini, Michal Orzel, xenia.ragiadakou,
Ayan Kumar Halder, consulting, Jan Beulich, Andrew Cooper,
Julien Grall, George Dunlap, Wei Liu
>
> Upon further examination, I identified the following patterns:
>
> 1. Functions defined in .c called only from asm code (e.g., the
> already mentioned __start_xen)
> 2. Functions/variables declared in a .h, defined in a .c that does not
> include the .h with the declaration
> (e.g., 'fill_console_start_info' is defined in 'xen/drivers/vga.c',
> declared in 'xen/include/xen/console.h' which is not visible when
> compiling the .c).
> 3. Variables that are either extern or not, such as 'acpi_gbl_FADT' in
> 'xen/include/acpi/acglobal.h', depending on
> DEFINE_ACPI_GLOBALS
>
> Below are the proposed resolution strategies:
>
> 1. I would advise to add the declaration in the relative .h, to
> support automatic consistency checks with the
> implementation and a quick reference when touching the asm.
> 2. To comply with the rule, the header with the declaration should be
> included. Also note that there are some
> corner cases, such as 'get_sec', which is used in 'cper.h' without
> including 'time.h' (which should gain a
> declaration for it).
> 3. One possible resolution pattern is including 'acglobal.h' twice
> (either directly or indirectly trough acpi.h, if
> the latter does not cause other issues) like so:
>
> (assuming DEFINE_ACPI_GLOBALS is undefined here)
> #include "acglobal.h"
> #define DEFINE_ACPI_GLOBALS
> #include "acglobal.h"
>
> this way, the rule is followed properly, though it's not the
> prettiest pattern and also clashes with the objectives
> of D4.10 ("Precautions shall be taken in order to prevent the
> contents of a header file being included
> more than once"), but then a motivated exception is allowed there.
One further question is whether functions under
'xen/common/coverage/gcov_base.c' should gain
a declaration in 'gcov.h' or not, as they exist just for the purpose of
being referenced
by autogenerated profiling code. I see no reason why they shouldn't, but
they can also be safely deviated,
since they are not called by Xen code.
--
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Address MISRA C:2012 Rule 8.4
2023-08-04 11:39 ` Jan Beulich
@ 2023-08-04 14:09 ` Nicola Vetrini
2023-08-07 7:26 ` Jan Beulich
2023-08-04 20:40 ` Stefano Stabellini
1 sibling, 1 reply; 10+ messages in thread
From: Nicola Vetrini @ 2023-08-04 14:09 UTC (permalink / raw)
To: Jan Beulich
Cc: Xen-devel, Stefano Stabellini, Michal Orzel, xenia.ragiadakou,
Ayan Kumar Halder, consulting, Andrew Cooper, Julien Grall,
George Dunlap, Wei Liu, Stefano Stabellini
>> 3. Variables that are either extern or not, such as 'acpi_gbl_FADT' in
>> 'xen/include/acpi/acglobal.h', depending on
>> DEFINE_ACPI_GLOBALS
>>
>> Below are the proposed resolution strategies:
>
>> 3. One possible resolution pattern is including 'acglobal.h' twice
>> (either directly or indirectly trough acpi.h, if
>> the latter does not cause other issues) like so:
>>
>> (assuming DEFINE_ACPI_GLOBALS is undefined here)
>> #include "acglobal.h"
>> #define DEFINE_ACPI_GLOBALS
>> #include "acglobal.h"
>>
>> this way, the rule is followed properly, though it's not the
>> prettiest
>> pattern and also clashes with the objectives
>> of D4.10 ("Precautions shall be taken in order to prevent the
>> contents
>> of a header file being included
>> more than once"), but then a motivated exception is allowed there.
>
> Not really sure about this one.
>
> Jan
If you can tell me more about why that header is defined the way it is
(i.e. why it's used twice with
DEFINE_ACPI_GLOBALS #defined and the other times without), maybe we can
come up
with better alternatives.
--
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Address MISRA C:2012 Rule 8.4
2023-08-04 11:39 ` Jan Beulich
2023-08-04 14:09 ` Nicola Vetrini
@ 2023-08-04 20:40 ` Stefano Stabellini
1 sibling, 0 replies; 10+ messages in thread
From: Stefano Stabellini @ 2023-08-04 20:40 UTC (permalink / raw)
To: Jan Beulich
Cc: Nicola Vetrini, Xen-devel, Stefano Stabellini, Michal Orzel,
xenia.ragiadakou, Ayan Kumar Halder, consulting, Andrew Cooper,
Julien Grall, George Dunlap, Wei Liu, Stefano Stabellini
On Fri, 4 Aug 2023, Jan Beulich wrote:
> On 04.08.2023 11:47, Nicola Vetrini wrote:
> > Upon further examination, I identified the following patterns:
> >
> > 1. Functions defined in .c called only from asm code (e.g., the already
> > mentioned __start_xen)
> > 2. Functions/variables declared in a .h, defined in a .c that does not
> > include the .h with the declaration
> > (e.g., 'fill_console_start_info' is defined in 'xen/drivers/vga.c',
> > declared in 'xen/include/xen/console.h' which is not visible when
> > compiling the .c).
> > 3. Variables that are either extern or not, such as 'acpi_gbl_FADT' in
> > 'xen/include/acpi/acglobal.h', depending on
> > DEFINE_ACPI_GLOBALS
> >
> > Below are the proposed resolution strategies:
> >
> > 1. I would advise to add the declaration in the relative .h, to support
> > automatic consistency checks with the
> > implementation and a quick reference when touching the asm.
>
> That'll need discussing first.
My take is that it would be nicer if they were declared in .h files. It
would also be useful for ourselves as documentation/reference. So I
would be OK accepting patches like that. But at the same time I don't
see it as a must-have requirement for safety (the .h declaration would
not be actually used).
> > 2. To comply with the rule, the header with the declaration should be
> > included. Also note that there are some
> > corner cases, such as 'get_sec', which is used in 'cper.h' without
> > including 'time.h' (which should gain a
> > declaration for it).
>
> This one of course wants fixing wherever found.
+1
> > 3. One possible resolution pattern is including 'acglobal.h' twice
> > (either directly or indirectly trough acpi.h, if
> > the latter does not cause other issues) like so:
> >
> > (assuming DEFINE_ACPI_GLOBALS is undefined here)
> > #include "acglobal.h"
> > #define DEFINE_ACPI_GLOBALS
> > #include "acglobal.h"
> >
> > this way, the rule is followed properly, though it's not the prettiest
> > pattern and also clashes with the objectives
> > of D4.10 ("Precautions shall be taken in order to prevent the contents
> > of a header file being included
> > more than once"), but then a motivated exception is allowed there.
>
> Not really sure about this one.
I would leave these alone because it was clearly done on purpose "to
simplify maintenance of the code" as the in-code comment claims. Also
this is very old code, probably inherited from somewhere else and never
changed.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Address MISRA C:2012 Rule 8.4
2023-08-04 14:09 ` Nicola Vetrini
@ 2023-08-07 7:26 ` Jan Beulich
0 siblings, 0 replies; 10+ messages in thread
From: Jan Beulich @ 2023-08-07 7:26 UTC (permalink / raw)
To: Nicola Vetrini
Cc: Xen-devel, Stefano Stabellini, Michal Orzel, xenia.ragiadakou,
Ayan Kumar Halder, consulting, Andrew Cooper, Julien Grall,
George Dunlap, Wei Liu, Stefano Stabellini
On 04.08.2023 16:09, Nicola Vetrini wrote:
>>> 3. One possible resolution pattern is including 'acglobal.h' twice
>>> (either directly or indirectly trough acpi.h, if
>>> the latter does not cause other issues) like so:
>>>
>>> (assuming DEFINE_ACPI_GLOBALS is undefined here)
>>> #include "acglobal.h"
>>> #define DEFINE_ACPI_GLOBALS
>>> #include "acglobal.h"
>>>
>>> this way, the rule is followed properly, though it's not the
>>> prettiest
>>> pattern and also clashes with the objectives
>>> of D4.10 ("Precautions shall be taken in order to prevent the
>>> contents
>>> of a header file being included
>>> more than once"), but then a motivated exception is allowed there.
>>
>> Not really sure about this one.
>
> If you can tell me more about why that header is defined the way it is
> (i.e. why it's used twice with
> DEFINE_ACPI_GLOBALS #defined and the other times without), maybe we can
> come up
> with better alternatives.
The "Why?" question can only be answered by the ACPICA folks who originally
made it like this. Linux inherited the file from there, and we inherited it
from Linux. See also Stefano's reply on the matter. My guess is that the
goal was to have just a single place that needs changing (besides consumer
sites, where changes may or may not be necessary) if the type of a variable
needs to be adjusted.
Jan
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Address MISRA C:2012 Rule 8.4
2023-08-04 14:00 ` Nicola Vetrini
@ 2023-08-07 7:34 ` Jan Beulich
2023-08-07 10:40 ` Nicola Vetrini
0 siblings, 1 reply; 10+ messages in thread
From: Jan Beulich @ 2023-08-07 7:34 UTC (permalink / raw)
To: Nicola Vetrini
Cc: Xen-devel, Stefano Stabellini, Michal Orzel, xenia.ragiadakou,
Ayan Kumar Halder, consulting, Andrew Cooper, Julien Grall,
George Dunlap, Wei Liu, Stefano Stabellini
On 04.08.2023 16:00, Nicola Vetrini wrote:
>>
>> Upon further examination, I identified the following patterns:
>>
>> 1. Functions defined in .c called only from asm code (e.g., the
>> already mentioned __start_xen)
>> 2. Functions/variables declared in a .h, defined in a .c that does not
>> include the .h with the declaration
>> (e.g., 'fill_console_start_info' is defined in 'xen/drivers/vga.c',
>> declared in 'xen/include/xen/console.h' which is not visible when
>> compiling the .c).
>> 3. Variables that are either extern or not, such as 'acpi_gbl_FADT' in
>> 'xen/include/acpi/acglobal.h', depending on
>> DEFINE_ACPI_GLOBALS
>>
>> Below are the proposed resolution strategies:
>>
>> 1. I would advise to add the declaration in the relative .h, to
>> support automatic consistency checks with the
>> implementation and a quick reference when touching the asm.
>> 2. To comply with the rule, the header with the declaration should be
>> included. Also note that there are some
>> corner cases, such as 'get_sec', which is used in 'cper.h' without
>> including 'time.h' (which should gain a
>> declaration for it).
>> 3. One possible resolution pattern is including 'acglobal.h' twice
>> (either directly or indirectly trough acpi.h, if
>> the latter does not cause other issues) like so:
>>
>> (assuming DEFINE_ACPI_GLOBALS is undefined here)
>> #include "acglobal.h"
>> #define DEFINE_ACPI_GLOBALS
>> #include "acglobal.h"
>>
>> this way, the rule is followed properly, though it's not the
>> prettiest pattern and also clashes with the objectives
>> of D4.10 ("Precautions shall be taken in order to prevent the
>> contents of a header file being included
>> more than once"), but then a motivated exception is allowed there.
>
> One further question is whether functions under
> 'xen/common/coverage/gcov_base.c' should gain
> a declaration in 'gcov.h' or not, as they exist just for the purpose of
> being referenced
> by autogenerated profiling code. I see no reason why they shouldn't, but
> they can also be safely deviated,
> since they are not called by Xen code.
Imo it should be the compiler to provide a prototype for these (much
like it does for builtins), thus ensuring that an implementation
actually matches the compiler's expectations. Yet afaics it doesn't.
Jan
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Address MISRA C:2012 Rule 8.4
2023-08-07 7:34 ` Jan Beulich
@ 2023-08-07 10:40 ` Nicola Vetrini
0 siblings, 0 replies; 10+ messages in thread
From: Nicola Vetrini @ 2023-08-07 10:40 UTC (permalink / raw)
To: Jan Beulich
Cc: Xen-devel, Stefano Stabellini, Michal Orzel, xenia.ragiadakou,
Ayan Kumar Halder, consulting, Andrew Cooper, Julien Grall,
George Dunlap, Wei Liu, Stefano Stabellini
>> One further question is whether functions under
>> 'xen/common/coverage/gcov_base.c' should gain
>> a declaration in 'gcov.h' or not, as they exist just for the purpose
>> of
>> being referenced
>> by autogenerated profiling code. I see no reason why they shouldn't,
>> but
>> they can also be safely deviated,
>> since they are not called by Xen code.
>
> Imo it should be the compiler to provide a prototype for these (much
> like it does for builtins), thus ensuring that an implementation
> actually matches the compiler's expectations. Yet afaics it doesn't.
>
> Jan
Then it's perhaps best to deviate them.
--
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2023-08-07 10:40 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-08-03 9:20 Address MISRA C:2012 Rule 8.4 Nicola Vetrini
2023-08-04 0:35 ` Stefano Stabellini
2023-08-04 9:47 ` Nicola Vetrini
2023-08-04 11:39 ` Jan Beulich
2023-08-04 14:09 ` Nicola Vetrini
2023-08-07 7:26 ` Jan Beulich
2023-08-04 20:40 ` Stefano Stabellini
2023-08-04 14:00 ` Nicola Vetrini
2023-08-07 7:34 ` Jan Beulich
2023-08-07 10:40 ` Nicola Vetrini
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.