1762bb9d0ad20320b9f97a841dce57ba5e8e48b07Richard Smith//===----------------------------------------------------------------------===// 2f677ea3cc9598d9952ad7ffab5fb322ba4c5be31Sebastian Redl// 3f677ea3cc9598d9952ad7ffab5fb322ba4c5be31Sebastian Redl// The LLVM Compiler Infrastructure 4f677ea3cc9598d9952ad7ffab5fb322ba4c5be31Sebastian Redl// 5c5a89a1cc2f168ad0a115c560b8de5f1c952d8c5Richard Smith// This file is dual licensed under the MIT and the University of Illinois Open 6f677ea3cc9598d9952ad7ffab5fb322ba4c5be31Sebastian Redl// Source Licenses. See LICENSE.TXT for details. 7f677ea3cc9598d9952ad7ffab5fb322ba4c5be31Sebastian Redl// 8f677ea3cc9598d9952ad7ffab5fb322ba4c5be31Sebastian Redl//===----------------------------------------------------------------------===// 9f677ea3cc9598d9952ad7ffab5fb322ba4c5be31Sebastian Redl 10f677ea3cc9598d9952ad7ffab5fb322ba4c5be31Sebastian Redl// test type_info 1107b0fdcee8d64222b274779d02851cc53d18e0dbRichard Smith 1207b0fdcee8d64222b274779d02851cc53d18e0dbRichard Smith#include <typeinfo> 13f677ea3cc9598d9952ad7ffab5fb322ba4c5be31Sebastian Redl#include <cstring> 14f677ea3cc9598d9952ad7ffab5fb322ba4c5be31Sebastian Redl#include <cassert> 1507b0fdcee8d64222b274779d02851cc53d18e0dbRichard Smith 1607b0fdcee8d64222b274779d02851cc53d18e0dbRichard Smithint main() 17f677ea3cc9598d9952ad7ffab5fb322ba4c5be31Sebastian Redl{ 18f677ea3cc9598d9952ad7ffab5fb322ba4c5be31Sebastian Redl const std::type_info& t1 = typeid(int); 19c5a89a1cc2f168ad0a115c560b8de5f1c952d8c5Richard Smith const std::type_info& t2 = typeid(int); 20c5a89a1cc2f168ad0a115c560b8de5f1c952d8c5Richard Smith assert(t1 == t2); 21c5a89a1cc2f168ad0a115c560b8de5f1c952d8c5Richard Smith const std::type_info& t3 = typeid(short); 22c5a89a1cc2f168ad0a115c560b8de5f1c952d8c5Richard Smith assert(t1 != t3); 23c5a89a1cc2f168ad0a115c560b8de5f1c952d8c5Richard Smith assert(!t1.before(t2)); 24c5a89a1cc2f168ad0a115c560b8de5f1c952d8c5Richard Smith assert(strcmp(t1.name(), t2.name()) == 0); 2507b0fdcee8d64222b274779d02851cc53d18e0dbRichard Smith assert(strcmp(t1.name(), t3.name()) != 0); 2607b0fdcee8d64222b274779d02851cc53d18e0dbRichard Smith} 27c5a89a1cc2f168ad0a115c560b8de5f1c952d8c5Richard Smith