diff mbox series

[FFmpeg-devel] checkasm: Remove unnecessary const on scalar parameters

Message ID 20231217220434.2867783-1-martin@martin.st
State Accepted
Commit f5e3e9e04e83820e093f789a2f77c5f3b48797b2
Headers show
Series [FFmpeg-devel] checkasm: Remove unnecessary const on scalar parameters | expand

Checks

Context Check Description
yinshiyou/make_loongarch64 success Make finished
yinshiyou/make_fate_loongarch64 success Make fate finished
andriy/make_x86 success Make finished
andriy/make_fate_x86 success Make fate finished

Commit Message

Martin Storsjö Dec. 17, 2023, 10:04 p.m. UTC
The ffmpeg coding style doesn't usually use const on scalar
parameters (or on the pointer values - as opposed to the type
that is pointed to, where it has a semantic meaning), contrary
to the dav1d coding style (where this was imported from).

This avoids warnings about differences in the type signatures
between declaration and definition of this function, with older
versions of MSVC.

The issue was observed with one version of MSVC 2017,
19.16.27024.1, with warnings like these:

    src/tests/checkasm/checkasm.c(969): warning C4028: formal parameter 3 different from declaration
---
 tests/checkasm/checkasm.c | 4 ++--
 tests/checkasm/checkasm.h | 8 ++++----
 2 files changed, 6 insertions(+), 6 deletions(-)

Comments

Martin Storsjö Dec. 20, 2023, 8:06 a.m. UTC | #1
On Mon, 18 Dec 2023, Martin Storsjö wrote:

> The ffmpeg coding style doesn't usually use const on scalar
> parameters (or on the pointer values - as opposed to the type
> that is pointed to, where it has a semantic meaning), contrary
> to the dav1d coding style (where this was imported from).
>
> This avoids warnings about differences in the type signatures
> between declaration and definition of this function, with older
> versions of MSVC.
>
> The issue was observed with one version of MSVC 2017,
> 19.16.27024.1, with warnings like these:
>
>    src/tests/checkasm/checkasm.c(969): warning C4028: formal parameter 3 different from declaration

FWIW, newer versions of MSVC don't warn about this - the warning is bogus 
indeed. But these const markings are unnecessary here anyway, and aren't 
endorsed in the ffmpeg coding style.

Anyway, this patch got generally favourable response on irc yesterday, so 
I'll push it today.

// Martin
diff mbox series

Patch

diff --git a/tests/checkasm/checkasm.c b/tests/checkasm/checkasm.c
index 6318d9296b..daa5438f88 100644
--- a/tests/checkasm/checkasm.c
+++ b/tests/checkasm/checkasm.c
@@ -933,10 +933,10 @@  void checkasm_report(const char *name, ...)
 }
 
 #define DEF_CHECKASM_CHECK_FUNC(type, fmt) \
-int checkasm_check_##type(const char *const file, const int line, \
+int checkasm_check_##type(const char *file, int line, \
                           const type *buf1, ptrdiff_t stride1, \
                           const type *buf2, ptrdiff_t stride2, \
-                          const int w, int h, const char *const name) \
+                          int w, int h, const char *name) \
 { \
     int y = 0; \
     stride1 /= sizeof(*buf1); \
diff --git a/tests/checkasm/checkasm.h b/tests/checkasm/checkasm.h
index e3c19510fa..f2b63ef8c8 100644
--- a/tests/checkasm/checkasm.h
+++ b/tests/checkasm/checkasm.h
@@ -308,10 +308,10 @@  typedef struct CheckasmPerf {
 #endif
 
 #define DECL_CHECKASM_CHECK_FUNC(type) \
-int checkasm_check_##type(const char *const file, const int line, \
-                          const type *const buf1, const ptrdiff_t stride1, \
-                          const type *const buf2, const ptrdiff_t stride2, \
-                          const int w, const int h, const char *const name)
+int checkasm_check_##type(const char *file, int line, \
+                          const type *buf1, ptrdiff_t stride1, \
+                          const type *buf2, ptrdiff_t stride2, \
+                          int w, int h, const char *name)
 
 DECL_CHECKASM_CHECK_FUNC(uint8_t);
 DECL_CHECKASM_CHECK_FUNC(uint16_t);