12bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber//===----------------------------------------------------------------------===// 22bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber// 32bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber// The LLVM Compiler Infrastructure 42bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber// 52bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber// This file is dual licensed under the MIT and the University of Illinois Open 62bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber// Source Licenses. See LICENSE.TXT for details. 72bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber// 82bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber//===----------------------------------------------------------------------===// 92bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber 102bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber#include <ctime> 112bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber#include <type_traits> 122bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber 132bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber#ifndef NULL 142bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber#error NULL not defined 152bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber#endif 162bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber 172bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber#ifndef CLOCKS_PER_SEC 182bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber#error CLOCKS_PER_SEC not defined 192bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber#endif 202bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber 212bfdd428c56c7524d1a11979f200a1762866032dAndreas Huberint main() 222bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber{ 232bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber std::clock_t c = 0; 242bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber std::size_t s = 0; 2581dd60e0340ddcf7f1d5fb80b6c30906fabf201aOscar Rydhé std::time_t t = 0; 262bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber std::tm tm = {0}; 271b86fe063badb5f28c467ade39be0f4008688947Andreas Huber char str[3]; 2849694688c82214f5fd9e969e177c9e126a240a26Andreas Huber static_assert((std::is_same<decltype(std::clock()), std::clock_t>::value), ""); 292bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber static_assert((std::is_same<decltype(std::difftime(t,t)), double>::value), ""); 302bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber static_assert((std::is_same<decltype(std::mktime(&tm)), std::time_t>::value), ""); 312bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber static_assert((std::is_same<decltype(std::time(&t)), std::time_t>::value), ""); 322bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber static_assert((std::is_same<decltype(std::asctime(&tm)), char*>::value), ""); 33cfc3083927df14bf82403b20a45ae303a01c39f5Roger Jönsson static_assert((std::is_same<decltype(std::ctime(&t)), char*>::value), ""); 34cfc3083927df14bf82403b20a45ae303a01c39f5Roger Jönsson static_assert((std::is_same<decltype(std::gmtime(&t)), std::tm*>::value), ""); 352bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber static_assert((std::is_same<decltype(std::localtime(&t)), std::tm*>::value), ""); 365ab368af38fefacc4009e3ab1c1bbd00e62b3bcfAndreas Huber static_assert((std::is_same<decltype(std::strftime(str,s,"",&tm)), std::size_t>::value), ""); 371b86fe063badb5f28c467ade39be0f4008688947Andreas Huber} 382bfdd428c56c7524d1a11979f200a1762866032dAndreas Huber