1a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnant//===----------------------------------------------------------------------===// 2a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnant// 3a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnant// The LLVM Compiler Infrastructure 4a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnant// 5a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnant// This file is dual licensed under the MIT and the University of Illinois Open 6a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnant// Source Licenses. See LICENSE.TXT for details. 7a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnant// 8a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnant//===----------------------------------------------------------------------===// 9a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnant 10a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnant// test get_terminate 11a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnant 12a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnant#include <exception> 13a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnant#include <cstdlib> 14a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnant#include <cassert> 15a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnant 16a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnantvoid f1() {} 17a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnantvoid f2() {} 18a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnant 19a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnantint main() 20a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnant{ 21a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnant std::set_terminate(f1); 22a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnant assert(std::get_terminate() == f1); 23a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnant std::set_terminate(f2); 24a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnant assert(std::get_terminate() == f2); 25a445151f4a1a9abf852cd7b84d6328687bb3294cHoward Hinnant} 26