On 5/31/19 6:32 AM, David Hildenbrand wrote: > On 30.05.19 13:22, Peter Maydell wrote: >> Hi -- Coverity (CID 1401703) complains that a lot of this >> function is dead code: >> >>> +static S390Vector galois_multiply64(uint64_t a, uint64_t b) >>> +{ >>> + S390Vector res = {}; >>> + S390Vector va = { >>> + .doubleword[1] = a, >>> + }; ... >> but I can't make any sense of its annotations or why it >> thinks this is true. Would somebody like to have a look at the >> issue? If it's just Coverity getting confused we can mark it >> as a false positive. > > I can't make absolutely any sense of the coverity gibberish as well. > > The only think is that "vb->doubleword[0]" will always be 0, but that's > not what coverity is complaining about. > > Marking it as false positive, thanks!
It does seem to be gibberish. How in the world does it believe that the dimensionality of S390Vector is variable. However, because of where the two errors are placed, I can only imagine that Coverity is confused by the syntax of the initialization. If it were easier to run and get results, I'd try making the assignment as a separate statement, instead of the init syntax. But it's probably not worth the churn. r~