test: Add tests for conversion between 64 bit integers and long double
This commit is contained in:
1 parent
13d48841a0
commit
fe57d608de
1 file changed
+11
@@ -1692,17 +1692,28 @@ int main(int argc, char* argv[]) {
|
||||
TEST_INT((signed long long)(float)F(274877906944), 274877906944ULL);
|
||||
TEST_INT((signed long long)(float)F(-274877906944), -274877906944LL);
|
||||
|
||||
TEST_INT((unsigned long long)(long double)F(4.2), 4);
|
||||
TEST_INT((signed long long)(long double)F(4.2), 4);
|
||||
TEST_INT((unsigned long long)(long double)F(274877906944), 274877906944ULL);
|
||||
TEST_INT((signed long long)(long double)F(274877906944), 274877906944ULL);
|
||||
TEST_INT((signed long long)(long double)F(-274877906944), -274877906944LL);
|
||||
|
||||
TEST_FLT((double)LL(4), 4.0);
|
||||
TEST_FLT((float)LL(4), 4.0);
|
||||
TEST_FLT((long double)LL(4), 4.0);
|
||||
TEST_FLT((double)LL(123456789012345), 123456789012345.0);
|
||||
TEST_FLT((double)LL(-123456789012345), -123456789012345.0);
|
||||
TEST_FLT((float)LL(274877906944), 274877906944.0);
|
||||
TEST_FLT((float)LL(-274877906944), -274877906944.0);
|
||||
TEST_FLT((long double)LL(274877906944), 274877906944.0);
|
||||
TEST_FLT((long double)LL(-274877906944), -274877906944.0);
|
||||
|
||||
TEST_FLT((double)ULL(4), 4.0);
|
||||
TEST_FLT((float)ULL(4), 4.0);
|
||||
TEST_FLT((long double)ULL(4), 4.0);
|
||||
TEST_FLT((double)ULL(17293822569102704640), 17293822569102704640.0);
|
||||
TEST_FLT((float)ULL(17293822569102704640), 17293822569102704640.0);
|
||||
TEST_FLT((long double)ULL(17293822569102704640), 17293822569102704640.0);
|
||||
|
||||
#ifdef _WIN32
|
||||
long value = 0;
|
||||
|
||||
Reference in new issue
Block a user