@@ -842,6 +842,15 @@ TEST_CASE("float", "[]" ) {
842842 PRINTING_CHECK (" 3.1415" , ==, sprintf_, buffer, " %.4f" , 3.1415354 );
843843 PRINTING_CHECK (" 30343.142" , ==, sprintf_, buffer, " %.3f" , 30343.1415354 );
844844
845+ PRINTING_CHECK (" 2.1474836470e+09" , ==, sprintf_, buffer, " %.10f" , 2147483647.0 ); // 2^31 - 1
846+ PRINTING_CHECK (" 2.1474836480e+09" , ==, sprintf_, buffer, " %.10f" , 2147483648.0 ); // 2^31
847+ PRINTING_CHECK (" 4.2949672950e+09" , ==, sprintf_, buffer, " %.10f" , 4294967295.0 ); // 2^32 - 1
848+ PRINTING_CHECK (" 4.2949672960e+09" , ==, sprintf_, buffer, " %.10f" , 4294967296.0 ); // 2^32
849+ PRINTING_CHECK (" 2147483647" , ==, sprintf_, buffer, " %.10g" , 2147483647.0 ); // 2^31 - 1
850+ PRINTING_CHECK (" 2147483648" , ==, sprintf_, buffer, " %.10g" , 2147483648.0 ); // 2^31
851+ PRINTING_CHECK (" 4294967295" , ==, sprintf_, buffer, " %.10g" , 4294967295.0 ); // 2^32 - 1
852+ PRINTING_CHECK (" 4294967296" , ==, sprintf_, buffer, " %.10g" , 4294967296.0 ); // 2^32
853+
845854 // switch from decimal to exponential representation
846855 //
847856 CAPTURE_AND_PRINT (sprintf_, buffer, " %.0f" , (double ) ((int64_t )1 * 1000 ) );
0 commit comments