boost::bind makes my brain hurt

why?

typedef ... K;
typedef std::map<k , HANDLE> map_type;
map_type map_;
...
std::for_each(map_.begin(), map_.end(),
    boost::bind(&map_type::value_type::second, _1)); // this works
std::for_each(map_.begin(), map_.end(),
    boost::bind(WSACloseEvent,
    boost::bind(&map_type::value_type::second, _1)));
    // this barfs inside boost::bind ... incomplete type