| ... | ... | @@ -439,10 +439,74 @@ extern { |
| 439 | 439 | } |
| 440 | 440 | |
| 441 | 441 | export fn main(argc : isize, argv : &&u8, env : &&u8) -> i32 { |
| 442 | | printf(c"0=%d\n", 0 as i32); // TODO: more tests |
| 442 | printf(c"\n"); |
| 443 | printf(c"0.0: %a\n", |
| 444 | 0.0 as f64); |
| 445 | printf(c"0e0: %a\n", |
| 446 | 0e0 as f64); |
| 447 | printf(c"0.0e0: %a\n", |
| 448 | 0.0e0 as f64); |
| 449 | printf(c"000000000000000000000000000000000000000000000000000000000.0e0: %a\n", |
| 450 | 000000000000000000000000000000000000000000000000000000000.0e0 as f64); |
| 451 | printf(c"0.000000000000000000000000000000000000000000000000000000000e0: %a\n", |
| 452 | 0.000000000000000000000000000000000000000000000000000000000e0 as f64); |
| 453 | printf(c"0.0e000000000000000000000000000000000000000000000000000000000: %a\n", |
| 454 | 0.0e000000000000000000000000000000000000000000000000000000000 as f64); |
| 455 | |
| 456 | printf(c"\n"); |
| 457 | |
| 458 | printf(c"0x1.0: %a\n", |
| 459 | 0x1.0 as f64); |
| 460 | printf(c"0x10.0: %a\n", |
| 461 | 0x10.0 as f64); |
| 462 | printf(c"0x100.0: %a\n", |
| 463 | 0x100.0 as f64); |
| 464 | printf(c"0x103.0: %a\n", |
| 465 | 0x103.0 as f64); |
| 466 | printf(c"0x103.7: %a\n", |
| 467 | 0x103.7 as f64); |
| 468 | printf(c"0x103.70: %a\n", |
| 469 | 0x103.70 as f64); |
| 470 | printf(c"0x103.70p4: %a\n", |
| 471 | 0x103.70p4 as f64); |
| 472 | printf(c"0x103.70p5: %a\n", |
| 473 | 0x103.70p5 as f64); |
| 474 | printf(c"0x103.70p+5: %a\n", |
| 475 | 0x103.70p+5 as f64); |
| 476 | printf(c"0x103.70p-5: %a\n", |
| 477 | 0x103.70p-5 as f64); |
| 478 | |
| 479 | printf(c"\n"); |
| 480 | |
| 481 | printf(c"0b10100.00010e0: %a\n", |
| 482 | 0b10100.00010e0 as f64); |
| 483 | printf(c"0o10700.00010e0: %a\n", |
| 484 | 0o10700.00010e0 as f64); |
| 485 | |
| 443 | 486 | return 0; |
| 444 | 487 | } |
| 445 | | )SOURCE", "0=0\n"); |
| 488 | )SOURCE", R"OUTPUT( |
| 489 | 0.0: 0x0p+0 |
| 490 | 0e0: 0x0p+0 |
| 491 | 0.0e0: 0x0p+0 |
| 492 | 000000000000000000000000000000000000000000000000000000000.0e0: 0x0p+0 |
| 493 | 0.000000000000000000000000000000000000000000000000000000000e0: 0x0p+0 |
| 494 | 0.0e000000000000000000000000000000000000000000000000000000000: 0x0p+0 |
| 495 | |
| 496 | 0x1.0: 0x1p+0 |
| 497 | 0x10.0: 0x1p+4 |
| 498 | 0x100.0: 0x1p+8 |
| 499 | 0x103.0: 0x1.03p+8 |
| 500 | 0x103.7: 0x1.037p+8 |
| 501 | 0x103.70: 0x1.037p+8 |
| 502 | 0x103.70p4: 0x1.037p+12 |
| 503 | 0x103.70p5: 0x1.037p+13 |
| 504 | 0x103.70p+5: 0x1.037p+13 |
| 505 | 0x103.70p-5: 0x1.037p+3 |
| 506 | |
| 507 | 0b10100.00010e0: 0x1.41p+4 |
| 508 | 0o10700.00010e0: 0x1.1c0001p+12 |
| 509 | )OUTPUT"); |
| 446 | 510 | |
| 447 | 511 | add_simple_case("structs", R"SOURCE( |
| 448 | 512 | use "std.zig"; |