diff options
Diffstat (limited to 'clang/test/Analysis/deadstores-driverkit.cpp')
| -rw-r--r-- | clang/test/Analysis/deadstores-driverkit.cpp | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/clang/test/Analysis/deadstores-driverkit.cpp b/clang/test/Analysis/deadstores-driverkit.cpp new file mode 100644 index 00000000000..446821b32ca --- /dev/null +++ b/clang/test/Analysis/deadstores-driverkit.cpp @@ -0,0 +1,24 @@ +/* iig generated from SomethingSomething.iig */ + +// The comment above is the whole point of the test. +// That's how the suppression works. +// It needs to be on the top. +// Run-lines can wait. + +// RUN: %clang_analyze_cc1 -w -triple x86_64-apple-driverkit19.0 \ +// RUN: -analyzer-checker=deadcode -verify %s + +// expected-no-diagnostics + +#include "os_object_base.h" + +class OSSomething { + kern_return_t Invoke(const IORPC); + void foo(OSDispatchMethod supermethod) { + kern_return_t ret; + IORPC rpc; + // Test the DriverKit specific suppression in the dead stores checker. + if (supermethod) ret = supermethod((OSObject *)this, rpc); // no-warning + else ret = ((OSObject *)this)->Invoke(rpc); // no-warning + } +}; |

