diff options
author | Eric Fiselier <eric@efcs.ca> | 2015-08-18 19:41:51 +0000 |
---|---|---|
committer | Eric Fiselier <eric@efcs.ca> | 2015-08-18 19:41:51 +0000 |
commit | 0d28f784010b548946fdfa042de4a78e834c8772 (patch) | |
tree | af65139cae9622f7ce6f73946d04749f8d1b52bd /clang/lib/Frontend/CompilerInstance.cpp | |
parent | 4504cf2c8de1e6c2479e07c06b71e4506fe8fe70 (diff) | |
download | llvm-0d28f784010b548946fdfa042de4a78e834c8772.zip llvm-0d28f784010b548946fdfa042de4a78e834c8772.tar.gz llvm-0d28f784010b548946fdfa042de4a78e834c8772.tar.bz2 |
[libcxx] Fix PR23589: std::function doesn't recognize null pointer to varargs function.
Summary:
This patch fixes __not_null's detection of nullptr by breaking it down into 4 cases.
1. `__not_null(Tp const&)`: Default case. Tp is not null.
2. `__not_null(Tp* __ptr);` Case for pointers to functions.
3. `__not_null(_Ret _Class::* __ptr);` Case for pointers to members.
4. `__not_null(function<Tp> const&);`: Cases for other std::functions.
Reviewers: mclow.lists
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D11111
llvm-svn: 245335
Diffstat (limited to 'clang/lib/Frontend/CompilerInstance.cpp')
0 files changed, 0 insertions, 0 deletions