[PATCH 2/3] v4l2: printings for all buf types

Dmitry V. Levin ldv at altlinux.org
Tue Apr 4 21:18:26 UTC 2017


On Tue, Apr 04, 2017 at 03:43:51AM +0300, Dmitry V. Levin wrote:
[...]
> gcc -DHAVE_CONFIG_H   -I./linux/x86_64 -I../linux/x86_64 -I./linux -I../linux -I. -I..   -DIN_MPERS -DMPERS_IS_m32 -I./mpers-m32  -Wall -Wempty-body -Wformat-security -Wignored-qualifiers -Winit-self -Wlogical-op -Wmissing-parameter-type -Wnested-externs -Wold-style-declaration -Wold-style-definition -Wsign-compare -Wtype-limits -Wwrite-strings -Werror  -pipe -Wall -g -O2 -c -o libmpers_m32_a-v4l2.o `test -f 'v4l2.c' || echo '../'`v4l2.c
> In file included from ../v4l2.c:30:0:
> ../v4l2.c: In function 'print_v4l2_format_fmt':
> ../defs.h:78:46: error: subscripted value is neither array nor pointer nor vector
>  #define ARRAY_SIZE(a) (sizeof(a) / sizeof((a)[0]) + MUST_BE_ARRAY(a))
>                                               ^
> ../v4l2.c:315:13: note: in expansion of macro 'ARRAY_SIZE'
>          j < ARRAY_SIZE(f->fmt.sliced.service_lines[0]);
>              ^~~~~~~~~~
> In file included from ../defs.h:58:0,
>                  from ../v4l2.c:30:
> ../gcc_compat.h:59:66: error: subscripted value is neither array nor pointer nor vector
>  # define MUST_BE_ARRAY(a) FAIL_BUILD_ON_ZERO(!SAME_TYPE((a), &(a)[0]))
>                                                                   ^
> ../gcc_compat.h:57:59: note: in definition of macro 'FAIL_BUILD_ON_ZERO'
>  # define FAIL_BUILD_ON_ZERO(expr) (sizeof(int[-1 + 2 * !!(expr)]) * 0)
>                                                            ^~~~
> ../gcc_compat.h:59:47: note: in expansion of macro 'SAME_TYPE'
>  # define MUST_BE_ARRAY(a) FAIL_BUILD_ON_ZERO(!SAME_TYPE((a), &(a)[0]))
>                                                ^~~~~~~~~
> ../defs.h:78:53: note: in expansion of macro 'MUST_BE_ARRAY'
>  #define ARRAY_SIZE(a) (sizeof(a) / sizeof((a)[0]) + MUST_BE_ARRAY(a))
>                                                      ^~~~~~~~~~~~~
> ../v4l2.c:315:13: note: in expansion of macro 'ARRAY_SIZE'
>          j < ARRAY_SIZE(f->fmt.sliced.service_lines[0]);
>              ^~~~~~~~~~
> ../v4l2.c:320:36: error: subscripted value is neither array nor pointer nor vector
>       f->fmt.sliced.service_lines[i][j]);
>                                     ^
> 
> This must be a bug in mpers.awk because mpers-m32/struct_v4l2_format.h looks
> wrong around service_lines.

It's fixed by commit v4.16-81-g490b1ca.


-- 
ldv
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 801 bytes
Desc: not available
URL: <http://lists.strace.io/pipermail/strace-devel/attachments/20170405/e46ea72a/attachment.bin>


More information about the Strace-devel mailing list