Hi Masahiro, Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx> wrote on Tue, 22 Jan 2019 16:42:55 +0900: > Although drivers do not directly get access to the private data of > instruction patterns, let's use unnamed union field to be consistent > with nand_op_instr. > Actually this is how we wrote it the first time. Then we got robots reporting that anonymous unions where not allowed with older (still supported) GCC versions and I had to do this: commit c1a72e2dbb4abb90bd408480d7c48ba40cb799ce Author: Miquel Raynal <miquel.raynal@xxxxxxxxxxxxxxxxxx> Date: Fri Jan 19 19:11:27 2018 +0100 mtd: nand: Fix build issues due to an anonymous union GCC-4.4.4 raises errors when assigning a parameter in an anonymous union, leading to this kind of failure: drivers/mtd/nand/marvell_nand.c:1936: warning: missing braces around initializer warning: (near initialization for '(anonymous)[1].<anonymous>') error: unknown field 'data' specified in initializer error: unknown field 'addr' specified in initializer Work around the situation by naming these unions. Fixes: 8878b126df76 ("mtd: nand: add ->exec_op() implementation") Reported-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> Signed-off-by: Miquel Raynal <miquel.raynal@xxxxxxxxxxxxxxxxxx> Tested-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> Signed-off-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx> Thanks, Miquèl