From: kernel test robot <lkp@intel.com>
To: Tamir Duberstein <tamird@gmail.com>,
David Gow <davidgow@google.com>, Petr Mladek <pmladek@suse.com>,
Steven Rostedt <rostedt@goodmis.org>,
Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
Rasmus Villemoes <linux@rasmusvillemoes.dk>,
Sergey Senozhatsky <senozhatsky@chromium.org>,
Andrew Morton <akpm@linux-foundation.org>,
Shuah Khan <skhan@linuxfoundation.org>
Cc: oe-kbuild-all@lists.linux.dev,
Linux Memory Management List <linux-mm@kvack.org>,
Geert Uytterhoeven <geert@linux-m68k.org>,
linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org,
Tamir Duberstein <tamird@gmail.com>
Subject: Re: [PATCH v8 3/4] scanf: convert self-test to KUnit
Date: Sun, 16 Feb 2025 02:50:45 +0800 [thread overview]
Message-ID: <202502160245.KUrryBJR-lkp@intel.com> (raw)
In-Reply-To: <20250214-scanf-kunit-convert-v8-3-5ea50f95f83c@gmail.com>
Hi Tamir,
kernel test robot noticed the following build warnings:
[auto build test WARNING on 7b7a883c7f4de1ee5040bd1c32aabaafde54d209]
url: https://github.com/intel-lab-lkp/linux/commits/Tamir-Duberstein/scanf-implicate-test-line-in-failure-messages/20250215-002302
base: 7b7a883c7f4de1ee5040bd1c32aabaafde54d209
patch link: https://lore.kernel.org/r/20250214-scanf-kunit-convert-v8-3-5ea50f95f83c%40gmail.com
patch subject: [PATCH v8 3/4] scanf: convert self-test to KUnit
config: sh-randconfig-002-20250216 (https://download.01.org/0day-ci/archive/20250216/202502160245.KUrryBJR-lkp@intel.com/config)
compiler: sh4-linux-gcc (GCC) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250216/202502160245.KUrryBJR-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202502160245.KUrryBJR-lkp@intel.com/
All warnings (new ones prefixed by >>):
In file included from <command-line>:
lib/tests/scanf_kunit.c: In function 'numbers_list_ll':
>> include/linux/compiler.h:197:61: warning: function 'numbers_list_ll' might be a candidate for 'gnu_scanf' format attribute [-Wsuggest-attribute=format]
197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
| ^
include/linux/compiler_types.h:522:23: note: in definition of macro '__compiletime_assert'
522 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert'
542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:9: note: in expansion of macro 'BUILD_BUG_ON'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~~~
include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
| ^~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:22: note: in expansion of macro 'ARRAY_SIZE'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~
lib/tests/scanf_kunit.c:356:9: note: in expansion of macro 'test_array_8'
356 | test_array_8(fn, expect, test_buffer, fmt_buffer, result); \
| ^~~~~~~~~~~~
lib/tests/scanf_kunit.c:390:9: note: in expansion of macro 'numbers_list_8'
390 | numbers_list_8(unsigned long long, "%llu", delim, "llu", check_ull);
| ^~~~~~~~~~~~~~
>> include/linux/compiler.h:197:61: warning: function 'numbers_list_ll' might be a candidate for 'gnu_scanf' format attribute [-Wsuggest-attribute=format]
197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
| ^
include/linux/compiler_types.h:522:23: note: in definition of macro '__compiletime_assert'
522 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert'
542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:9: note: in expansion of macro 'BUILD_BUG_ON'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~~~
include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
| ^~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:22: note: in expansion of macro 'ARRAY_SIZE'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~
lib/tests/scanf_kunit.c:356:9: note: in expansion of macro 'test_array_8'
356 | test_array_8(fn, expect, test_buffer, fmt_buffer, result); \
| ^~~~~~~~~~~~
lib/tests/scanf_kunit.c:391:9: note: in expansion of macro 'numbers_list_8'
391 | numbers_list_8(long long, "%lld", delim, "lld", check_ll);
| ^~~~~~~~~~~~~~
>> include/linux/compiler.h:197:61: warning: function 'numbers_list_ll' might be a candidate for 'gnu_scanf' format attribute [-Wsuggest-attribute=format]
197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
| ^
include/linux/compiler_types.h:522:23: note: in definition of macro '__compiletime_assert'
522 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert'
542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:9: note: in expansion of macro 'BUILD_BUG_ON'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~~~
include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
| ^~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:22: note: in expansion of macro 'ARRAY_SIZE'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~
lib/tests/scanf_kunit.c:356:9: note: in expansion of macro 'test_array_8'
356 | test_array_8(fn, expect, test_buffer, fmt_buffer, result); \
| ^~~~~~~~~~~~
lib/tests/scanf_kunit.c:392:9: note: in expansion of macro 'numbers_list_8'
392 | numbers_list_8(long long, "%lld", delim, "lli", check_ll);
| ^~~~~~~~~~~~~~
>> include/linux/compiler.h:197:61: warning: function 'numbers_list_ll' might be a candidate for 'gnu_scanf' format attribute [-Wsuggest-attribute=format]
197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
| ^
include/linux/compiler_types.h:522:23: note: in definition of macro '__compiletime_assert'
522 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert'
542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:9: note: in expansion of macro 'BUILD_BUG_ON'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~~~
include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
| ^~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:22: note: in expansion of macro 'ARRAY_SIZE'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~
lib/tests/scanf_kunit.c:356:9: note: in expansion of macro 'test_array_8'
356 | test_array_8(fn, expect, test_buffer, fmt_buffer, result); \
| ^~~~~~~~~~~~
lib/tests/scanf_kunit.c:393:9: note: in expansion of macro 'numbers_list_8'
393 | numbers_list_8(unsigned long long, "%llx", delim, "llx", check_ull);
| ^~~~~~~~~~~~~~
>> include/linux/compiler.h:197:61: warning: function 'numbers_list_ll' might be a candidate for 'gnu_scanf' format attribute [-Wsuggest-attribute=format]
197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
| ^
include/linux/compiler_types.h:522:23: note: in definition of macro '__compiletime_assert'
522 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert'
542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:9: note: in expansion of macro 'BUILD_BUG_ON'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~~~
include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
| ^~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:22: note: in expansion of macro 'ARRAY_SIZE'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~
lib/tests/scanf_kunit.c:356:9: note: in expansion of macro 'test_array_8'
356 | test_array_8(fn, expect, test_buffer, fmt_buffer, result); \
| ^~~~~~~~~~~~
lib/tests/scanf_kunit.c:394:9: note: in expansion of macro 'numbers_list_8'
394 | numbers_list_8(unsigned long long, "0x%llx", delim, "llx", check_ull);
| ^~~~~~~~~~~~~~
>> include/linux/compiler.h:197:61: warning: function 'numbers_list_ll' might be a candidate for 'gnu_scanf' format attribute [-Wsuggest-attribute=format]
197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
| ^
include/linux/compiler_types.h:522:23: note: in definition of macro '__compiletime_assert'
522 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert'
542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:9: note: in expansion of macro 'BUILD_BUG_ON'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~~~
include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
| ^~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:22: note: in expansion of macro 'ARRAY_SIZE'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~
lib/tests/scanf_kunit.c:356:9: note: in expansion of macro 'test_array_8'
356 | test_array_8(fn, expect, test_buffer, fmt_buffer, result); \
| ^~~~~~~~~~~~
lib/tests/scanf_kunit.c:395:9: note: in expansion of macro 'numbers_list_8'
395 | numbers_list_8(long long, "0x%llx", delim, "lli", check_ll);
| ^~~~~~~~~~~~~~
lib/tests/scanf_kunit.c: In function 'numbers_list_l':
>> include/linux/compiler.h:197:61: warning: function 'numbers_list_l' might be a candidate for 'gnu_scanf' format attribute [-Wsuggest-attribute=format]
197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
| ^
include/linux/compiler_types.h:522:23: note: in definition of macro '__compiletime_assert'
522 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert'
542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:9: note: in expansion of macro 'BUILD_BUG_ON'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~~~
include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
| ^~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:22: note: in expansion of macro 'ARRAY_SIZE'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~
lib/tests/scanf_kunit.c:356:9: note: in expansion of macro 'test_array_8'
356 | test_array_8(fn, expect, test_buffer, fmt_buffer, result); \
| ^~~~~~~~~~~~
lib/tests/scanf_kunit.c:400:9: note: in expansion of macro 'numbers_list_8'
400 | numbers_list_8(unsigned long, "%lu", delim, "lu", check_ulong);
| ^~~~~~~~~~~~~~
>> include/linux/compiler.h:197:61: warning: function 'numbers_list_l' might be a candidate for 'gnu_scanf' format attribute [-Wsuggest-attribute=format]
197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
| ^
include/linux/compiler_types.h:522:23: note: in definition of macro '__compiletime_assert'
522 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert'
542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:9: note: in expansion of macro 'BUILD_BUG_ON'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~~~
include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
| ^~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:22: note: in expansion of macro 'ARRAY_SIZE'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~
lib/tests/scanf_kunit.c:356:9: note: in expansion of macro 'test_array_8'
356 | test_array_8(fn, expect, test_buffer, fmt_buffer, result); \
| ^~~~~~~~~~~~
lib/tests/scanf_kunit.c:401:9: note: in expansion of macro 'numbers_list_8'
401 | numbers_list_8(long, "%ld", delim, "ld", check_long);
| ^~~~~~~~~~~~~~
>> include/linux/compiler.h:197:61: warning: function 'numbers_list_l' might be a candidate for 'gnu_scanf' format attribute [-Wsuggest-attribute=format]
197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
| ^
include/linux/compiler_types.h:522:23: note: in definition of macro '__compiletime_assert'
522 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert'
542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:9: note: in expansion of macro 'BUILD_BUG_ON'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~~~
include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
| ^~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:22: note: in expansion of macro 'ARRAY_SIZE'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~
lib/tests/scanf_kunit.c:356:9: note: in expansion of macro 'test_array_8'
356 | test_array_8(fn, expect, test_buffer, fmt_buffer, result); \
| ^~~~~~~~~~~~
lib/tests/scanf_kunit.c:402:9: note: in expansion of macro 'numbers_list_8'
402 | numbers_list_8(long, "%ld", delim, "li", check_long);
| ^~~~~~~~~~~~~~
>> include/linux/compiler.h:197:61: warning: function 'numbers_list_l' might be a candidate for 'gnu_scanf' format attribute [-Wsuggest-attribute=format]
197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
| ^
include/linux/compiler_types.h:522:23: note: in definition of macro '__compiletime_assert'
522 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert'
542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:9: note: in expansion of macro 'BUILD_BUG_ON'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~~~
include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
| ^~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:22: note: in expansion of macro 'ARRAY_SIZE'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~
lib/tests/scanf_kunit.c:356:9: note: in expansion of macro 'test_array_8'
356 | test_array_8(fn, expect, test_buffer, fmt_buffer, result); \
| ^~~~~~~~~~~~
lib/tests/scanf_kunit.c:403:9: note: in expansion of macro 'numbers_list_8'
403 | numbers_list_8(unsigned long, "%lx", delim, "lx", check_ulong);
| ^~~~~~~~~~~~~~
>> include/linux/compiler.h:197:61: warning: function 'numbers_list_l' might be a candidate for 'gnu_scanf' format attribute [-Wsuggest-attribute=format]
197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
| ^
include/linux/compiler_types.h:522:23: note: in definition of macro '__compiletime_assert'
522 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert'
542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:9: note: in expansion of macro 'BUILD_BUG_ON'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~~~
include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
| ^~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:22: note: in expansion of macro 'ARRAY_SIZE'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~
lib/tests/scanf_kunit.c:356:9: note: in expansion of macro 'test_array_8'
356 | test_array_8(fn, expect, test_buffer, fmt_buffer, result); \
| ^~~~~~~~~~~~
lib/tests/scanf_kunit.c:404:9: note: in expansion of macro 'numbers_list_8'
404 | numbers_list_8(unsigned long, "0x%lx", delim, "lx", check_ulong);
| ^~~~~~~~~~~~~~
>> include/linux/compiler.h:197:61: warning: function 'numbers_list_l' might be a candidate for 'gnu_scanf' format attribute [-Wsuggest-attribute=format]
197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
| ^
include/linux/compiler_types.h:522:23: note: in definition of macro '__compiletime_assert'
522 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert'
542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:9: note: in expansion of macro 'BUILD_BUG_ON'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~~~
include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
| ^~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:22: note: in expansion of macro 'ARRAY_SIZE'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~
lib/tests/scanf_kunit.c:356:9: note: in expansion of macro 'test_array_8'
356 | test_array_8(fn, expect, test_buffer, fmt_buffer, result); \
| ^~~~~~~~~~~~
lib/tests/scanf_kunit.c:405:9: note: in expansion of macro 'numbers_list_8'
405 | numbers_list_8(long, "0x%lx", delim, "li", check_long);
| ^~~~~~~~~~~~~~
lib/tests/scanf_kunit.c: In function 'numbers_list_d':
>> include/linux/compiler.h:197:61: warning: function 'numbers_list_d' might be a candidate for 'gnu_scanf' format attribute [-Wsuggest-attribute=format]
197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
| ^
include/linux/compiler_types.h:522:23: note: in definition of macro '__compiletime_assert'
522 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert'
542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:9: note: in expansion of macro 'BUILD_BUG_ON'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~~~
include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
| ^~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:22: note: in expansion of macro 'ARRAY_SIZE'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~
lib/tests/scanf_kunit.c:356:9: note: in expansion of macro 'test_array_8'
356 | test_array_8(fn, expect, test_buffer, fmt_buffer, result); \
| ^~~~~~~~~~~~
lib/tests/scanf_kunit.c:410:9: note: in expansion of macro 'numbers_list_8'
410 | numbers_list_8(unsigned int, "%u", delim, "u", check_uint);
| ^~~~~~~~~~~~~~
>> include/linux/compiler.h:197:61: warning: function 'numbers_list_d' might be a candidate for 'gnu_scanf' format attribute [-Wsuggest-attribute=format]
197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
| ^
include/linux/compiler_types.h:522:23: note: in definition of macro '__compiletime_assert'
522 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert'
542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:9: note: in expansion of macro 'BUILD_BUG_ON'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~~~
include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
| ^~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:22: note: in expansion of macro 'ARRAY_SIZE'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~
lib/tests/scanf_kunit.c:356:9: note: in expansion of macro 'test_array_8'
356 | test_array_8(fn, expect, test_buffer, fmt_buffer, result); \
| ^~~~~~~~~~~~
lib/tests/scanf_kunit.c:411:9: note: in expansion of macro 'numbers_list_8'
411 | numbers_list_8(int, "%d", delim, "d", check_int);
| ^~~~~~~~~~~~~~
>> include/linux/compiler.h:197:61: warning: function 'numbers_list_d' might be a candidate for 'gnu_scanf' format attribute [-Wsuggest-attribute=format]
197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
| ^
include/linux/compiler_types.h:522:23: note: in definition of macro '__compiletime_assert'
522 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert'
542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:9: note: in expansion of macro 'BUILD_BUG_ON'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~~~
include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
| ^~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:22: note: in expansion of macro 'ARRAY_SIZE'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~
lib/tests/scanf_kunit.c:356:9: note: in expansion of macro 'test_array_8'
356 | test_array_8(fn, expect, test_buffer, fmt_buffer, result); \
| ^~~~~~~~~~~~
lib/tests/scanf_kunit.c:412:9: note: in expansion of macro 'numbers_list_8'
412 | numbers_list_8(int, "%d", delim, "i", check_int);
| ^~~~~~~~~~~~~~
>> include/linux/compiler.h:197:61: warning: function 'numbers_list_d' might be a candidate for 'gnu_scanf' format attribute [-Wsuggest-attribute=format]
197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
| ^
include/linux/compiler_types.h:522:23: note: in definition of macro '__compiletime_assert'
522 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert'
542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:9: note: in expansion of macro 'BUILD_BUG_ON'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~~~
include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
| ^~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:22: note: in expansion of macro 'ARRAY_SIZE'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~
lib/tests/scanf_kunit.c:356:9: note: in expansion of macro 'test_array_8'
356 | test_array_8(fn, expect, test_buffer, fmt_buffer, result); \
| ^~~~~~~~~~~~
lib/tests/scanf_kunit.c:413:9: note: in expansion of macro 'numbers_list_8'
413 | numbers_list_8(unsigned int, "%x", delim, "x", check_uint);
| ^~~~~~~~~~~~~~
>> include/linux/compiler.h:197:61: warning: function 'numbers_list_d' might be a candidate for 'gnu_scanf' format attribute [-Wsuggest-attribute=format]
197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
| ^
include/linux/compiler_types.h:522:23: note: in definition of macro '__compiletime_assert'
522 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert'
542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:9: note: in expansion of macro 'BUILD_BUG_ON'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~~~
include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
| ^~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:22: note: in expansion of macro 'ARRAY_SIZE'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~
lib/tests/scanf_kunit.c:356:9: note: in expansion of macro 'test_array_8'
356 | test_array_8(fn, expect, test_buffer, fmt_buffer, result); \
| ^~~~~~~~~~~~
lib/tests/scanf_kunit.c:414:9: note: in expansion of macro 'numbers_list_8'
414 | numbers_list_8(unsigned int, "0x%x", delim, "x", check_uint);
| ^~~~~~~~~~~~~~
>> include/linux/compiler.h:197:61: warning: function 'numbers_list_d' might be a candidate for 'gnu_scanf' format attribute [-Wsuggest-attribute=format]
197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
| ^
include/linux/compiler_types.h:522:23: note: in definition of macro '__compiletime_assert'
522 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert'
542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:9: note: in expansion of macro 'BUILD_BUG_ON'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~~~
include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
| ^~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:22: note: in expansion of macro 'ARRAY_SIZE'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~
lib/tests/scanf_kunit.c:356:9: note: in expansion of macro 'test_array_8'
356 | test_array_8(fn, expect, test_buffer, fmt_buffer, result); \
| ^~~~~~~~~~~~
lib/tests/scanf_kunit.c:415:9: note: in expansion of macro 'numbers_list_8'
415 | numbers_list_8(int, "0x%x", delim, "i", check_int);
| ^~~~~~~~~~~~~~
lib/tests/scanf_kunit.c: In function 'numbers_list_h':
>> include/linux/compiler.h:197:61: warning: function 'numbers_list_h' might be a candidate for 'gnu_scanf' format attribute [-Wsuggest-attribute=format]
197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
| ^
include/linux/compiler_types.h:522:23: note: in definition of macro '__compiletime_assert'
522 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert'
542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:9: note: in expansion of macro 'BUILD_BUG_ON'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~~~
include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
| ^~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:22: note: in expansion of macro 'ARRAY_SIZE'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~
lib/tests/scanf_kunit.c:356:9: note: in expansion of macro 'test_array_8'
356 | test_array_8(fn, expect, test_buffer, fmt_buffer, result); \
| ^~~~~~~~~~~~
lib/tests/scanf_kunit.c:420:9: note: in expansion of macro 'numbers_list_8'
420 | numbers_list_8(unsigned short, "%hu", delim, "hu", check_ushort);
| ^~~~~~~~~~~~~~
>> include/linux/compiler.h:197:61: warning: function 'numbers_list_h' might be a candidate for 'gnu_scanf' format attribute [-Wsuggest-attribute=format]
197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
| ^
include/linux/compiler_types.h:522:23: note: in definition of macro '__compiletime_assert'
522 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert'
542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:9: note: in expansion of macro 'BUILD_BUG_ON'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~~~
include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
| ^~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:22: note: in expansion of macro 'ARRAY_SIZE'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~
lib/tests/scanf_kunit.c:356:9: note: in expansion of macro 'test_array_8'
356 | test_array_8(fn, expect, test_buffer, fmt_buffer, result); \
| ^~~~~~~~~~~~
lib/tests/scanf_kunit.c:421:9: note: in expansion of macro 'numbers_list_8'
421 | numbers_list_8(short, "%hd", delim, "hd", check_short);
| ^~~~~~~~~~~~~~
include/linux/compiler.h:197:61: warning: function 'numbers_list_h' might be a candidate for 'gnu_scanf' format attribute [-Wsuggest-attribute=format]
197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
| ^
include/linux/compiler_types.h:522:23: note: in definition of macro '__compiletime_assert'
522 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert'
542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:9: note: in expansion of macro 'BUILD_BUG_ON'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~~~
include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
| ^~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:22: note: in expansion of macro 'ARRAY_SIZE'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~
lib/tests/scanf_kunit.c:356:9: note: in expansion of macro 'test_array_8'
356 | test_array_8(fn, expect, test_buffer, fmt_buffer, result); \
| ^~~~~~~~~~~~
lib/tests/scanf_kunit.c:422:9: note: in expansion of macro 'numbers_list_8'
422 | numbers_list_8(short, "%hd", delim, "hi", check_short);
| ^~~~~~~~~~~~~~
include/linux/compiler.h:197:61: warning: function 'numbers_list_h' might be a candidate for 'gnu_scanf' format attribute [-Wsuggest-attribute=format]
197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
| ^
include/linux/compiler_types.h:522:23: note: in definition of macro '__compiletime_assert'
522 | if (!(condition)) \
| ^~~~~~~~~
include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert'
542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:9: note: in expansion of macro 'BUILD_BUG_ON'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~~~
include/linux/compiler.h:202:33: note: in expansion of macro '__BUILD_BUG_ON_ZERO_MSG'
202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/array_size.h:11:59: note: in expansion of macro '__must_be_array'
11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
| ^~~~~~~~~~~~~~~
lib/tests/scanf_kunit.c:333:22: note: in expansion of macro 'ARRAY_SIZE'
333 | BUILD_BUG_ON(ARRAY_SIZE(arr) != 8); \
| ^~~~~~~~~~
lib/tests/scanf_kunit.c:356:9: note: in expansion of macro 'test_array_8'
356 | test_array_8(fn, expect, test_buffer, fmt_buffer, result); \
| ^~~~~~~~~~~~
lib/tests/scanf_kunit.c:423:9: note: in expansion of macro 'numbers_list_8'
423 | numbers_list_8(unsigned short, "%hx", delim, "hx", check_ushort);
| ^~~~~~~~~~~~~~
include/linux/compiler.h:197:61: warning: function 'numbers_list_h' might be a candidate for 'gnu_scanf' format attribute [-Wsuggest-attribute=format]
197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
vim +197 include/linux/compiler.h
230fa253df6352a Christian Borntraeger 2014-11-25 193
cb7380de9e4cbc9 Kees Cook 2025-02-05 194 #ifdef __CHECKER__
cb7380de9e4cbc9 Kees Cook 2025-02-05 195 #define __BUILD_BUG_ON_ZERO_MSG(e, msg) (0)
cb7380de9e4cbc9 Kees Cook 2025-02-05 196 #else /* __CHECKER__ */
cb7380de9e4cbc9 Kees Cook 2025-02-05 @197 #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
cb7380de9e4cbc9 Kees Cook 2025-02-05 198 #endif /* __CHECKER__ */
cb7380de9e4cbc9 Kees Cook 2025-02-05 199
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next prev parent reply other threads:[~2025-02-15 18:51 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-14 16:19 [PATCH v8 0/4] scanf: convert self-test to KUnit Tamir Duberstein
2025-02-14 16:19 ` [PATCH v8 1/4] scanf: implicate test line in failure messages Tamir Duberstein
2025-03-05 8:55 ` Petr Mladek
2025-03-05 9:56 ` Petr Mladek
2025-03-05 11:35 ` Tamir Duberstein
2025-02-14 16:19 ` [PATCH v8 2/4] scanf: remove redundant debug logs Tamir Duberstein
2025-03-05 8:59 ` Petr Mladek
2025-02-14 16:20 ` [PATCH v8 3/4] scanf: convert self-test to KUnit Tamir Duberstein
2025-02-15 18:50 ` kernel test robot [this message]
2025-02-15 19:52 ` Tamir Duberstein
2025-02-16 20:22 ` Andy Shevchenko
2025-02-17 14:29 ` Tamir Duberstein
2025-03-05 9:47 ` Petr Mladek
2025-03-05 11:36 ` Tamir Duberstein
2025-03-05 12:46 ` Petr Mladek
2025-02-14 16:20 ` [PATCH v8 4/4] scanf: break kunit into test cases Tamir Duberstein
2025-03-05 15:01 ` Petr Mladek
2025-03-05 15:25 ` Tamir Duberstein
2025-03-05 15:55 ` Andy Shevchenko
2025-03-05 15:57 ` Tamir Duberstein
2025-03-05 19:35 ` Andy Shevchenko
2025-03-05 20:09 ` Tamir Duberstein
2025-03-06 9:38 ` Petr Mladek
2025-03-06 10:56 ` Tamir Duberstein
2025-03-05 15:54 ` Andy Shevchenko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202502160245.KUrryBJR-lkp@intel.com \
--to=lkp@intel.com \
--cc=akpm@linux-foundation.org \
--cc=andriy.shevchenko@linux.intel.com \
--cc=davidgow@google.com \
--cc=geert@linux-m68k.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux@rasmusvillemoes.dk \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=pmladek@suse.com \
--cc=rostedt@goodmis.org \
--cc=senozhatsky@chromium.org \
--cc=skhan@linuxfoundation.org \
--cc=tamird@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.