Bug #5314
Updated by Vadim Mutilin about 10 years ago
For the code <pre><code class="c"> @ ax25_dev *ax25_dev; ... if ((ax25_dev = ax25_dev_ax25dev(dev)) == NULL) goto free; </code></pre> @ C-Backend generates <pre><code class="c"> @ ax25_dev *ax25_dev; # 232 "net/ax25/ax25_in.o.c.prepared" ... skb_reset_transport_header ( skb ); # 234 "net/ax25/ax25_in.o.c.prepared" if (( ax25_dev = ax25_dev_ax25dev ( dev ) ) == ( ( ax25_dev *) 0 )) goto free; </code></pre> @ GCC error: <pre> net/ax25/ax25_in.o.c.prepared: In function ‘ax25_rcv’: net/ax25/ax25_in.o.c.prepared:234:64: error: expected expression before ‘)’ token </pre> CPAchecker fails with <pre> Error: Parsing failed (Invalid type encountered in: ax25_dev in line 65224: ax25_dev (full line is if (( ax25_dev = ax25_dev_ax25dev ( dev ) ) == ( ( ax25_dev *) 0 )) goto free;)) (EclipseCParser.buildCFA, SEVERE) </pre> 32_7a, linux-3.17-rc1, net/ax25/ax25.ko