1//===----------------------------------------------------------------------===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is dual licensed under the MIT and the University of Illinois Open 6// Source Licenses. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// 9 10// <iterator> 11 12// struct bidirectional_iterator_tag : public forward_iterator_tag {}; 13 14#include <iterator> 15#include <type_traits> 16 17int main() 18{ 19 std::bidirectional_iterator_tag tag; 20 static_assert((std::is_base_of<std::forward_iterator_tag, 21 std::bidirectional_iterator_tag>::value), ""); 22 static_assert((!std::is_base_of<std::output_iterator_tag, 23 std::bidirectional_iterator_tag>::value), ""); 24} 25