Re: [PATCH v5] lib/vsprintf: Add support for generic FourCCs by extending %p4cc

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Aditya,

kernel test robot noticed the following build errors:

[auto build test ERROR on akpm-mm/mm-nonmm-unstable]
[also build test ERROR on linus/master v6.14-rc4 next-20250228]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Aditya-Garg/lib-vsprintf-Add-support-for-generic-FourCCs-by-extending-p4cc/20250301-003018
base:   https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-nonmm-unstable
patch link:    https://lore.kernel.org/r/2C9622E6-A2DB-4681-A971-604C79F9955E%40live.com
patch subject: [PATCH v5] lib/vsprintf: Add support for generic FourCCs by extending %p4cc
config: arc-randconfig-001-20250301 (https://download.01.org/0day-ci/archive/20250302/202503020121.qsiw3acQ-lkp@xxxxxxxxx/config)
compiler: arceb-elf-gcc (GCC) 13.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250302/202503020121.qsiw3acQ-lkp@xxxxxxxxx/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@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202503020121.qsiw3acQ-lkp@xxxxxxxxx/

All error/warnings (new ones prefixed by >>):

   lib/test_printf.c: In function 'fourcc_pointer':
>> lib/test_printf.c:802:17: warning: braces around scalar initializer
     802 |                 { 0x41424344, "ABCD (0x41424344)", },
         |                 ^
   lib/test_printf.c:802:17: note: (near initialization for 'try_ch.code')
>> lib/test_printf.c:802:31: warning: excess elements in scalar initializer
     802 |                 { 0x41424344, "ABCD (0x41424344)", },
         |                               ^~~~~~~~~~~~~~~~~~~
   lib/test_printf.c:802:31: note: (near initialization for 'try_ch.code')
   lib/test_printf.c:805:17: warning: braces around scalar initializer
     805 |                 { 0x41424344, "DCBA (0x44434241)", },
         |                 ^
   lib/test_printf.c:805:17: note: (near initialization for 'try_cn.code')
   lib/test_printf.c:805:31: warning: excess elements in scalar initializer
     805 |                 { 0x41424344, "DCBA (0x44434241)", },
         |                               ^~~~~~~~~~~~~~~~~~~
   lib/test_printf.c:805:31: note: (near initialization for 'try_cn.code')
   lib/test_printf.c:808:17: warning: braces around scalar initializer
     808 |                 { le32_to_cpu(0x41424344), "ABCD (0x41424344)", },
         |                 ^
   lib/test_printf.c:808:17: note: (near initialization for 'try_cl.code')
   lib/test_printf.c:808:44: warning: excess elements in scalar initializer
     808 |                 { le32_to_cpu(0x41424344), "ABCD (0x41424344)", },
         |                                            ^~~~~~~~~~~~~~~~~~~
   lib/test_printf.c:808:44: note: (near initialization for 'try_cl.code')
   lib/test_printf.c:811:17: warning: braces around scalar initializer
     811 |                 { be32_to_cpu(0x41424344), "ABCD (0x41424344)", },
         |                 ^
   lib/test_printf.c:811:17: note: (near initialization for 'try_cb.code')
   lib/test_printf.c:811:44: warning: excess elements in scalar initializer
     811 |                 { be32_to_cpu(0x41424344), "ABCD (0x41424344)", },
         |                                            ^~~~~~~~~~~~~~~~~~~
   lib/test_printf.c:811:44: note: (near initialization for 'try_cb.code')
   In file included from include/linux/kernel.h:16,
                    from lib/test_printf.c:9:
>> include/linux/array_size.h:11:52: error: subscripted value is neither array nor pointer nor vector
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                    ^
   lib/test_printf.c:815:37: note: in expansion of macro 'ARRAY_SIZE'
     815 |         fourcc_pointer_test(try_ch, ARRAY_SIZE(try_ch), "%p4ch");
         |                                     ^~~~~~~~~~
   In file included from include/linux/build_bug.h:5,
                    from include/linux/init.h:5,
                    from lib/test_printf.c:8:
>> include/linux/compiler.h:201:56: error: subscripted value is neither array nor pointer nor vector
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                                        ^
   include/linux/compiler.h:197:79: note: in definition of macro '__BUILD_BUG_ON_ZERO_MSG'
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                               ^
   include/linux/compiler.h:201:35: note: in expansion of macro '__same_type'
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                   ^~~~~~~~~~~
   include/linux/compiler.h:202:58: note: in expansion of macro '__is_array'
     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/test_printf.c:815:37: note: in expansion of macro 'ARRAY_SIZE'
     815 |         fourcc_pointer_test(try_ch, ARRAY_SIZE(try_ch), "%p4ch");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:197:77: error: expression in static assertion is not an integer
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                             ^
   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/test_printf.c:815:37: note: in expansion of macro 'ARRAY_SIZE'
     815 |         fourcc_pointer_test(try_ch, ARRAY_SIZE(try_ch), "%p4ch");
         |                                     ^~~~~~~~~~
>> lib/test_printf.c:815:29: error: incompatible type for argument 1 of 'fourcc_pointer_test'
     815 |         fourcc_pointer_test(try_ch, ARRAY_SIZE(try_ch), "%p4ch");
         |                             ^~~~~~
         |                             |
         |                             struct fourcc_struct
   lib/test_printf.c:784:68: note: expected 'const struct fourcc_struct *' but argument is of type 'struct fourcc_struct'
     784 | static void __init fourcc_pointer_test(const struct fourcc_struct *fc, size_t n,
         |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
>> include/linux/array_size.h:11:52: error: subscripted value is neither array nor pointer nor vector
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                    ^
   lib/test_printf.c:816:37: note: in expansion of macro 'ARRAY_SIZE'
     816 |         fourcc_pointer_test(try_cn, ARRAY_SIZE(try_cn), "%p4cn");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:201:56: error: subscripted value is neither array nor pointer nor vector
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                                        ^
   include/linux/compiler.h:197:79: note: in definition of macro '__BUILD_BUG_ON_ZERO_MSG'
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                               ^
   include/linux/compiler.h:201:35: note: in expansion of macro '__same_type'
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                   ^~~~~~~~~~~
   include/linux/compiler.h:202:58: note: in expansion of macro '__is_array'
     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/test_printf.c:816:37: note: in expansion of macro 'ARRAY_SIZE'
     816 |         fourcc_pointer_test(try_cn, ARRAY_SIZE(try_cn), "%p4cn");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:197:77: error: expression in static assertion is not an integer
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                             ^
   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/test_printf.c:816:37: note: in expansion of macro 'ARRAY_SIZE'
     816 |         fourcc_pointer_test(try_cn, ARRAY_SIZE(try_cn), "%p4cn");
         |                                     ^~~~~~~~~~
   lib/test_printf.c:816:29: error: incompatible type for argument 1 of 'fourcc_pointer_test'
     816 |         fourcc_pointer_test(try_cn, ARRAY_SIZE(try_cn), "%p4cn");
         |                             ^~~~~~
         |                             |
         |                             struct fourcc_struct
   lib/test_printf.c:784:68: note: expected 'const struct fourcc_struct *' but argument is of type 'struct fourcc_struct'
     784 | static void __init fourcc_pointer_test(const struct fourcc_struct *fc, size_t n,
         |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
>> include/linux/array_size.h:11:52: error: subscripted value is neither array nor pointer nor vector
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                    ^
   lib/test_printf.c:817:37: note: in expansion of macro 'ARRAY_SIZE'
     817 |         fourcc_pointer_test(try_cl, ARRAY_SIZE(try_cl), "%p4cl");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:201:56: error: subscripted value is neither array nor pointer nor vector
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                                        ^
   include/linux/compiler.h:197:79: note: in definition of macro '__BUILD_BUG_ON_ZERO_MSG'
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                               ^
   include/linux/compiler.h:201:35: note: in expansion of macro '__same_type'
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                   ^~~~~~~~~~~
   include/linux/compiler.h:202:58: note: in expansion of macro '__is_array'
     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/test_printf.c:817:37: note: in expansion of macro 'ARRAY_SIZE'
     817 |         fourcc_pointer_test(try_cl, ARRAY_SIZE(try_cl), "%p4cl");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:197:77: error: expression in static assertion is not an integer
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                             ^
   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/test_printf.c:817:37: note: in expansion of macro 'ARRAY_SIZE'
     817 |         fourcc_pointer_test(try_cl, ARRAY_SIZE(try_cl), "%p4cl");
         |                                     ^~~~~~~~~~
   lib/test_printf.c:817:29: error: incompatible type for argument 1 of 'fourcc_pointer_test'
     817 |         fourcc_pointer_test(try_cl, ARRAY_SIZE(try_cl), "%p4cl");
         |                             ^~~~~~
         |                             |
         |                             struct fourcc_struct
   lib/test_printf.c:784:68: note: expected 'const struct fourcc_struct *' but argument is of type 'struct fourcc_struct'
     784 | static void __init fourcc_pointer_test(const struct fourcc_struct *fc, size_t n,
         |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
>> include/linux/array_size.h:11:52: error: subscripted value is neither array nor pointer nor vector
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                    ^
   lib/test_printf.c:818:37: note: in expansion of macro 'ARRAY_SIZE'
     818 |         fourcc_pointer_test(try_cb, ARRAY_SIZE(try_cb), "%p4cb");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:201:56: error: subscripted value is neither array nor pointer nor vector
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                                        ^
   include/linux/compiler.h:197:79: note: in definition of macro '__BUILD_BUG_ON_ZERO_MSG'
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                               ^
   include/linux/compiler.h:201:35: note: in expansion of macro '__same_type'
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                   ^~~~~~~~~~~
   include/linux/compiler.h:202:58: note: in expansion of macro '__is_array'
     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/test_printf.c:818:37: note: in expansion of macro 'ARRAY_SIZE'
     818 |         fourcc_pointer_test(try_cb, ARRAY_SIZE(try_cb), "%p4cb");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:197:77: error: expression in static assertion is not an integer
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                             ^
   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/test_printf.c:818:37: note: in expansion of macro 'ARRAY_SIZE'
     818 |         fourcc_pointer_test(try_cb, ARRAY_SIZE(try_cb), "%p4cb");
         |                                     ^~~~~~~~~~
   lib/test_printf.c:818:29: error: incompatible type for argument 1 of 'fourcc_pointer_test'
     818 |         fourcc_pointer_test(try_cb, ARRAY_SIZE(try_cb), "%p4cb");
         |                             ^~~~~~
         |                             |
         |                             struct fourcc_struct
   lib/test_printf.c:784:68: note: expected 'const struct fourcc_struct *' but argument is of type 'struct fourcc_struct'
     784 | static void __init fourcc_pointer_test(const struct fourcc_struct *fc, size_t n,
         |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
--
   test_printf.c: In function 'fourcc_pointer':
   test_printf.c:802:17: warning: braces around scalar initializer
     802 |                 { 0x41424344, "ABCD (0x41424344)", },
         |                 ^
   test_printf.c:802:17: note: (near initialization for 'try_ch.code')
   test_printf.c:802:31: warning: excess elements in scalar initializer
     802 |                 { 0x41424344, "ABCD (0x41424344)", },
         |                               ^~~~~~~~~~~~~~~~~~~
   test_printf.c:802:31: note: (near initialization for 'try_ch.code')
   test_printf.c:805:17: warning: braces around scalar initializer
     805 |                 { 0x41424344, "DCBA (0x44434241)", },
         |                 ^
   test_printf.c:805:17: note: (near initialization for 'try_cn.code')
   test_printf.c:805:31: warning: excess elements in scalar initializer
     805 |                 { 0x41424344, "DCBA (0x44434241)", },
         |                               ^~~~~~~~~~~~~~~~~~~
   test_printf.c:805:31: note: (near initialization for 'try_cn.code')
   test_printf.c:808:17: warning: braces around scalar initializer
     808 |                 { le32_to_cpu(0x41424344), "ABCD (0x41424344)", },
         |                 ^
   test_printf.c:808:17: note: (near initialization for 'try_cl.code')
   test_printf.c:808:44: warning: excess elements in scalar initializer
     808 |                 { le32_to_cpu(0x41424344), "ABCD (0x41424344)", },
         |                                            ^~~~~~~~~~~~~~~~~~~
   test_printf.c:808:44: note: (near initialization for 'try_cl.code')
   test_printf.c:811:17: warning: braces around scalar initializer
     811 |                 { be32_to_cpu(0x41424344), "ABCD (0x41424344)", },
         |                 ^
   test_printf.c:811:17: note: (near initialization for 'try_cb.code')
   test_printf.c:811:44: warning: excess elements in scalar initializer
     811 |                 { be32_to_cpu(0x41424344), "ABCD (0x41424344)", },
         |                                            ^~~~~~~~~~~~~~~~~~~
   test_printf.c:811:44: note: (near initialization for 'try_cb.code')
   In file included from include/linux/kernel.h:16,
                    from test_printf.c:9:
>> include/linux/array_size.h:11:52: error: subscripted value is neither array nor pointer nor vector
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                    ^
   test_printf.c:815:37: note: in expansion of macro 'ARRAY_SIZE'
     815 |         fourcc_pointer_test(try_ch, ARRAY_SIZE(try_ch), "%p4ch");
         |                                     ^~~~~~~~~~
   In file included from include/linux/build_bug.h:5,
                    from include/linux/init.h:5,
                    from test_printf.c:8:
>> include/linux/compiler.h:201:56: error: subscripted value is neither array nor pointer nor vector
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                                        ^
   include/linux/compiler.h:197:79: note: in definition of macro '__BUILD_BUG_ON_ZERO_MSG'
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                               ^
   include/linux/compiler.h:201:35: note: in expansion of macro '__same_type'
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                   ^~~~~~~~~~~
   include/linux/compiler.h:202:58: note: in expansion of macro '__is_array'
     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))
         |                                                           ^~~~~~~~~~~~~~~
   test_printf.c:815:37: note: in expansion of macro 'ARRAY_SIZE'
     815 |         fourcc_pointer_test(try_ch, ARRAY_SIZE(try_ch), "%p4ch");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:197:77: error: expression in static assertion is not an integer
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                             ^
   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))
         |                                                           ^~~~~~~~~~~~~~~
   test_printf.c:815:37: note: in expansion of macro 'ARRAY_SIZE'
     815 |         fourcc_pointer_test(try_ch, ARRAY_SIZE(try_ch), "%p4ch");
         |                                     ^~~~~~~~~~
   test_printf.c:815:29: error: incompatible type for argument 1 of 'fourcc_pointer_test'
     815 |         fourcc_pointer_test(try_ch, ARRAY_SIZE(try_ch), "%p4ch");
         |                             ^~~~~~
         |                             |
         |                             struct fourcc_struct
   test_printf.c:784:68: note: expected 'const struct fourcc_struct *' but argument is of type 'struct fourcc_struct'
     784 | static void __init fourcc_pointer_test(const struct fourcc_struct *fc, size_t n,
         |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
>> include/linux/array_size.h:11:52: error: subscripted value is neither array nor pointer nor vector
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                    ^
   test_printf.c:816:37: note: in expansion of macro 'ARRAY_SIZE'
     816 |         fourcc_pointer_test(try_cn, ARRAY_SIZE(try_cn), "%p4cn");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:201:56: error: subscripted value is neither array nor pointer nor vector
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                                        ^
   include/linux/compiler.h:197:79: note: in definition of macro '__BUILD_BUG_ON_ZERO_MSG'
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                               ^
   include/linux/compiler.h:201:35: note: in expansion of macro '__same_type'
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                   ^~~~~~~~~~~
   include/linux/compiler.h:202:58: note: in expansion of macro '__is_array'
     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))
         |                                                           ^~~~~~~~~~~~~~~
   test_printf.c:816:37: note: in expansion of macro 'ARRAY_SIZE'
     816 |         fourcc_pointer_test(try_cn, ARRAY_SIZE(try_cn), "%p4cn");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:197:77: error: expression in static assertion is not an integer
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                             ^
   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))
         |                                                           ^~~~~~~~~~~~~~~
   test_printf.c:816:37: note: in expansion of macro 'ARRAY_SIZE'
     816 |         fourcc_pointer_test(try_cn, ARRAY_SIZE(try_cn), "%p4cn");
         |                                     ^~~~~~~~~~
   test_printf.c:816:29: error: incompatible type for argument 1 of 'fourcc_pointer_test'
     816 |         fourcc_pointer_test(try_cn, ARRAY_SIZE(try_cn), "%p4cn");
         |                             ^~~~~~
         |                             |
         |                             struct fourcc_struct
   test_printf.c:784:68: note: expected 'const struct fourcc_struct *' but argument is of type 'struct fourcc_struct'
     784 | static void __init fourcc_pointer_test(const struct fourcc_struct *fc, size_t n,
         |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
>> include/linux/array_size.h:11:52: error: subscripted value is neither array nor pointer nor vector
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                    ^
   test_printf.c:817:37: note: in expansion of macro 'ARRAY_SIZE'
     817 |         fourcc_pointer_test(try_cl, ARRAY_SIZE(try_cl), "%p4cl");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:201:56: error: subscripted value is neither array nor pointer nor vector
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                                        ^
   include/linux/compiler.h:197:79: note: in definition of macro '__BUILD_BUG_ON_ZERO_MSG'
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                               ^
   include/linux/compiler.h:201:35: note: in expansion of macro '__same_type'
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                   ^~~~~~~~~~~
   include/linux/compiler.h:202:58: note: in expansion of macro '__is_array'
     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))
         |                                                           ^~~~~~~~~~~~~~~
   test_printf.c:817:37: note: in expansion of macro 'ARRAY_SIZE'
     817 |         fourcc_pointer_test(try_cl, ARRAY_SIZE(try_cl), "%p4cl");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:197:77: error: expression in static assertion is not an integer
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                             ^
   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))
         |                                                           ^~~~~~~~~~~~~~~
   test_printf.c:817:37: note: in expansion of macro 'ARRAY_SIZE'
     817 |         fourcc_pointer_test(try_cl, ARRAY_SIZE(try_cl), "%p4cl");
         |                                     ^~~~~~~~~~
   test_printf.c:817:29: error: incompatible type for argument 1 of 'fourcc_pointer_test'
     817 |         fourcc_pointer_test(try_cl, ARRAY_SIZE(try_cl), "%p4cl");
         |                             ^~~~~~
         |                             |
         |                             struct fourcc_struct
   test_printf.c:784:68: note: expected 'const struct fourcc_struct *' but argument is of type 'struct fourcc_struct'
     784 | static void __init fourcc_pointer_test(const struct fourcc_struct *fc, size_t n,
         |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
>> include/linux/array_size.h:11:52: error: subscripted value is neither array nor pointer nor vector
      11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
         |                                                    ^
   test_printf.c:818:37: note: in expansion of macro 'ARRAY_SIZE'
     818 |         fourcc_pointer_test(try_cb, ARRAY_SIZE(try_cb), "%p4cb");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:201:56: error: subscripted value is neither array nor pointer nor vector
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                                        ^
   include/linux/compiler.h:197:79: note: in definition of macro '__BUILD_BUG_ON_ZERO_MSG'
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                               ^
   include/linux/compiler.h:201:35: note: in expansion of macro '__same_type'
     201 | #define __is_array(a)           (!__same_type((a), &(a)[0]))
         |                                   ^~~~~~~~~~~
   include/linux/compiler.h:202:58: note: in expansion of macro '__is_array'
     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))
         |                                                           ^~~~~~~~~~~~~~~
   test_printf.c:818:37: note: in expansion of macro 'ARRAY_SIZE'
     818 |         fourcc_pointer_test(try_cb, ARRAY_SIZE(try_cb), "%p4cb");
         |                                     ^~~~~~~~~~
>> include/linux/compiler.h:197:77: error: expression in static assertion is not an integer
     197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);}))
         |                                                                             ^
   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))
         |                                                           ^~~~~~~~~~~~~~~
   test_printf.c:818:37: note: in expansion of macro 'ARRAY_SIZE'
     818 |         fourcc_pointer_test(try_cb, ARRAY_SIZE(try_cb), "%p4cb");
         |                                     ^~~~~~~~~~
   test_printf.c:818:29: error: incompatible type for argument 1 of 'fourcc_pointer_test'
     818 |         fourcc_pointer_test(try_cb, ARRAY_SIZE(try_cb), "%p4cb");
         |                             ^~~~~~
         |                             |
         |                             struct fourcc_struct
   test_printf.c:784:68: note: expected 'const struct fourcc_struct *' but argument is of type 'struct fourcc_struct'
     784 | static void __init fourcc_pointer_test(const struct fourcc_struct *fc, size_t n,
         |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~


vim +/fourcc_pointer_test +815 lib/test_printf.c

   792	
   793	static void __init fourcc_pointer(void)
   794	{
   795		static const struct fourcc_struct try_cc[] = {
   796			{ 0x3231564e, "NV12 little-endian (0x3231564e)", },
   797			{ 0xb231564e, "NV12 big-endian (0xb231564e)", },
   798			{ 0x10111213, ".... little-endian (0x10111213)", },
   799			{ 0x20303159, "Y10  little-endian (0x20303159)", },
   800		};
   801		static const struct fourcc_struct try_ch = {
 > 802			{ 0x41424344, "ABCD (0x41424344)", },
   803		};
   804		static const struct fourcc_struct try_cn = {
   805			{ 0x41424344, "DCBA (0x44434241)", },
   806		};
   807		static const struct fourcc_struct try_cl = {
   808			{ le32_to_cpu(0x41424344), "ABCD (0x41424344)", },
   809		};
   810		static const struct fourcc_struct try_cb = {
   811			{ be32_to_cpu(0x41424344), "ABCD (0x41424344)", },
   812		};
   813	
   814		fourcc_pointer_test(try_cc, ARRAY_SIZE(try_cc), "%p4cc");
 > 815		fourcc_pointer_test(try_ch, ARRAY_SIZE(try_ch), "%p4ch");
   816		fourcc_pointer_test(try_cn, ARRAY_SIZE(try_cn), "%p4cn");
   817		fourcc_pointer_test(try_cl, ARRAY_SIZE(try_cl), "%p4cl");
   818		fourcc_pointer_test(try_cb, ARRAY_SIZE(try_cb), "%p4cb");
   819	}
   820	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki




[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux