Примеры ошибок, обнаруженных с помощью диагностики V681
V681. The language standard does not define order in which 'Foo' functions are called during evaluation of arguments.
Wine Is Not an Emulator
V681 The language standard does not define an order in which the 'tlb_read_byte' functions will be called during evaluation of arguments. tlb.c 650
static BOOL dump_msft_custdata(seg_t *seg)
{
....
printf("\\%2.2x \\%2.2x\n", tlb_read_byte(), tlb_read_byte());
....
}
Android
V681 CWE-758 The language standard does not define an order in which the 'readSigned' functions will be called during evaluation of arguments. ComposerClient.cpp 836
bool ComposerClient::CommandReader::parseSetLayerCursorPosition(uint16_t length)
{
if (length != CommandWriterBase::kSetLayerCursorPositionLength) {
return false;
}
auto err =
mHal.setLayerCursorPosition(mDisplay, mLayer,
readSigned(), readSigned());
if (err != Error::NONE) {
mWriter.setError(getCommandLoc(), err);
}
return true;
}