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: arm-randconfig-004-20250301 (https://download.01.org/0day-ci/archive/20250302/202503020112.24wZ1Wcs-lkp@xxxxxxxxx/config) compiler: clang version 21.0.0git (https://github.com/llvm/llvm-project 14170b16028c087ca154878f5ed93d3089a965c6) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250302/202503020112.24wZ1Wcs-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/202503020112.24wZ1Wcs-lkp@xxxxxxxxx/ All errors (new ones prefixed by >>): lib/test_printf.c:802:17: warning: excess elements in scalar initializer [-Wexcess-initializers] 802 | { 0x41424344, "ABCD (0x41424344)", }, | ^~~~~~~~~~~~~~~~~~~ lib/test_printf.c:805:17: warning: excess elements in scalar initializer [-Wexcess-initializers] 805 | { 0x41424344, "DCBA (0x44434241)", }, | ^~~~~~~~~~~~~~~~~~~ lib/test_printf.c:808:30: warning: excess elements in scalar initializer [-Wexcess-initializers] 808 | { le32_to_cpu(0x41424344), "ABCD (0x41424344)", }, | ^~~~~~~~~~~~~~~~~~~ lib/test_printf.c:811:30: warning: excess elements in scalar initializer [-Wexcess-initializers] 811 | { be32_to_cpu(0x41424344), "ABCD (0x41424344)", }, | ^~~~~~~~~~~~~~~~~~~ >> lib/test_printf.c:815:30: error: subscripted value is not an array, pointer, or vector 815 | fourcc_pointer_test(try_ch, ARRAY_SIZE(try_ch), "%p4ch"); | ^~~~~~~~~~~~~~~~~~ include/linux/array_size.h:11:52: note: expanded from macro 'ARRAY_SIZE' 11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr)) | ~~~~~^~ >> lib/test_printf.c:815:30: error: subscripted value is not an array, pointer, or vector 815 | fourcc_pointer_test(try_ch, ARRAY_SIZE(try_ch), "%p4ch"); | ^~~~~~~~~~~~~~~~~~ include/linux/array_size.h:11:59: note: expanded from macro 'ARRAY_SIZE' 11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr)) | ^~~~~~~~~~~~~~~~~~~~ include/linux/compiler.h:202:53: note: expanded from macro '__must_be_array' 202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \ | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ 203 | "must be array") | ~~~~~~~~~~~~~~~~ include/linux/compiler.h:201:47: note: expanded from macro '__is_array' 201 | #define __is_array(a) (!__same_type((a), &(a)[0])) | ^~ include/linux/compiler_types.h:483:74: note: expanded from macro '__same_type' 483 | #define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b)) | ^ include/linux/compiler.h:197:79: note: expanded from macro '__BUILD_BUG_ON_ZERO_MSG' 197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);})) | ^ lib/test_printf.c:816:30: error: subscripted value is not an array, pointer, or vector 816 | fourcc_pointer_test(try_cn, ARRAY_SIZE(try_cn), "%p4cn"); | ^~~~~~~~~~~~~~~~~~ include/linux/array_size.h:11:52: note: expanded from macro 'ARRAY_SIZE' 11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr)) | ~~~~~^~ lib/test_printf.c:816:30: error: subscripted value is not an array, pointer, or vector 816 | fourcc_pointer_test(try_cn, ARRAY_SIZE(try_cn), "%p4cn"); | ^~~~~~~~~~~~~~~~~~ include/linux/array_size.h:11:59: note: expanded from macro 'ARRAY_SIZE' 11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr)) | ^~~~~~~~~~~~~~~~~~~~ include/linux/compiler.h:202:53: note: expanded from macro '__must_be_array' 202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \ | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ 203 | "must be array") | ~~~~~~~~~~~~~~~~ include/linux/compiler.h:201:47: note: expanded from macro '__is_array' 201 | #define __is_array(a) (!__same_type((a), &(a)[0])) | ^~ include/linux/compiler_types.h:483:74: note: expanded from macro '__same_type' 483 | #define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b)) | ^ include/linux/compiler.h:197:79: note: expanded from macro '__BUILD_BUG_ON_ZERO_MSG' 197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);})) | ^ lib/test_printf.c:817:30: error: subscripted value is not an array, pointer, or vector 817 | fourcc_pointer_test(try_cl, ARRAY_SIZE(try_cl), "%p4cl"); | ^~~~~~~~~~~~~~~~~~ include/linux/array_size.h:11:52: note: expanded from macro 'ARRAY_SIZE' 11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr)) | ~~~~~^~ lib/test_printf.c:817:30: error: subscripted value is not an array, pointer, or vector 817 | fourcc_pointer_test(try_cl, ARRAY_SIZE(try_cl), "%p4cl"); | ^~~~~~~~~~~~~~~~~~ include/linux/array_size.h:11:59: note: expanded from macro 'ARRAY_SIZE' 11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr)) | ^~~~~~~~~~~~~~~~~~~~ include/linux/compiler.h:202:53: note: expanded from macro '__must_be_array' 202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \ | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ 203 | "must be array") | ~~~~~~~~~~~~~~~~ include/linux/compiler.h:201:47: note: expanded from macro '__is_array' 201 | #define __is_array(a) (!__same_type((a), &(a)[0])) | ^~ include/linux/compiler_types.h:483:74: note: expanded from macro '__same_type' 483 | #define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b)) | ^ include/linux/compiler.h:197:79: note: expanded from macro '__BUILD_BUG_ON_ZERO_MSG' 197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);})) | ^ lib/test_printf.c:818:30: error: subscripted value is not an array, pointer, or vector 818 | fourcc_pointer_test(try_cb, ARRAY_SIZE(try_cb), "%p4cb"); | ^~~~~~~~~~~~~~~~~~ include/linux/array_size.h:11:52: note: expanded from macro 'ARRAY_SIZE' 11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr)) | ~~~~~^~ lib/test_printf.c:818:30: error: subscripted value is not an array, pointer, or vector 818 | fourcc_pointer_test(try_cb, ARRAY_SIZE(try_cb), "%p4cb"); | ^~~~~~~~~~~~~~~~~~ include/linux/array_size.h:11:59: note: expanded from macro 'ARRAY_SIZE' 11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr)) | ^~~~~~~~~~~~~~~~~~~~ include/linux/compiler.h:202:53: note: expanded from macro '__must_be_array' 202 | #define __must_be_array(a) __BUILD_BUG_ON_ZERO_MSG(!__is_array(a), \ | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~ 203 | "must be array") | ~~~~~~~~~~~~~~~~ include/linux/compiler.h:201:47: note: expanded from macro '__is_array' 201 | #define __is_array(a) (!__same_type((a), &(a)[0])) | ^~ include/linux/compiler_types.h:483:74: note: expanded from macro '__same_type' 483 | #define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b)) | ^ include/linux/compiler.h:197:79: note: expanded from macro '__BUILD_BUG_ON_ZERO_MSG' 197 | #define __BUILD_BUG_ON_ZERO_MSG(e, msg) ((int)sizeof(struct {_Static_assert(!(e), msg);})) | ^ 4 warnings and 8 errors generated. vim +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