[libc++] Avoid including <Block.h> from <functional>
authorLouis Dionne <ldionne@apple.com>
Fri, 31 Jul 2020 16:56:36 +0000 (12:56 -0400)
committerLouis Dionne <ldionne@apple.com>
Fri, 31 Jul 2020 18:22:28 +0000 (14:22 -0400)
commit19bc9ea480b60b607a3e303f20c7a3a2ea553369
tree5122d272d1aef0bba2232ee777c5b96c501bf833
parentcd53ded557c3487b8dae2f9de894fdb5b75cb8c8
[libc++] Avoid including <Block.h> from <functional>

Block.h is a pretty common name, which can lead to nasty collisions with
user provided headers. Since we're only getting a few simple declarations
from the header, it's better to declare them manually than to include the
header.

rdar://66384326

Differential Revision: https://reviews.llvm.org/D85035
libcxx/include/functional
libcxx/test/libcxx/utilities/function.objects/func.blocks.sh.cpp