I found that cppcheck’s addon dump can produce MISRA diagnostics in a non-source order. In SymbolDatabase::printXml() (lib/symboldatabase.cpp), variables are collected in std::set<const Variable*> before the <variables> XML section is written. This orders records by object-pointer address instead of a stable source key. The MISRA addon reads that XML order into data.variables, and Rule 9.3 then iterates data.variables directly. Therefore Rule 9.3 diagnostics can be reported in a different order from...