Hi Luc, > -----Original Message----- > Most function designators are just a symbol (normal function call) > or some small expression for calls via a function pointer. But they > can be arbitrary complex when if done via a statement expression or > via an inline function. These expressions should be expanded to insure > that sub-expressions involving 'sizeof()' or some other 'operators' > taking a type as argument (like __builtin_compatible_types_p()) are > no more present. > > However, this is not currently enforced causing some failure at > linearization with warnings like: > warning: unknown expression (4 0) > (corresponding to EXPR_TYPE). > > Fix this by calling expand_expression() on function designator > while expanding a function call. > > References: > https://lore.kernel.org/lkml/1542623503-3755-1-git-send-email-yamada.m > asahiro@xxxxxxxxxxxxx/ > Reported-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx> > Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@xxxxxxxxx> Thanks for your quick fix! Tested-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>