NoQ added a comment. Chatted about this a bit more. Because `CallEvent` is an API designed mostly for convenience, and `ProgramState` is a core API that needs to stay as clean and separate from other entities and easy to understand as possible, it would be the best to
1. construct a `CallEvent` in the checker (which is cheap) and query that, 2. and also allow constructing `CallEvent`s for the top frame (with `StackFrameContext::inTopFrame()`, with null call site ("origin") expression), and 3. add a branch to the `CallEvent::getArgSVal()` method (and similar methods for obtaining implicit arguments like C++ `this`, ObjC `self`, ObjC `super`) to handle the top frame case. If this sounds hard, handling this completely on the checker side is fine, because few checker are using this at the moment. https://reviews.llvm.org/D27091 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits