a5bb0a3a45
floating point numbers for real. This will break code that looks like: let mut x = 0; while ... { x += 1; } println!("{}", x); Change that code to: let mut x = 0i; while ... { x += 1; } println!("{}", x); Closes #15201. [breaking-change]
82 lines
4.3 KiB
Plaintext
82 lines
4.3 KiB
Plaintext
digraph block {
|
|
N0[label="entry"];
|
|
N1[label="exit"];
|
|
N2[label="expr 16i"];
|
|
N3[label="local mut x"];
|
|
N4[label="expr 16i"];
|
|
N5[label="local mut y"];
|
|
N6[label="(dummy_node)"];
|
|
N7[label="expr \'outer:\l loop {\l \'inner:\l loop {\l if x == 1i { continue \'outer ; \"unreachable\" }\l if y >= 1i { break ; \"unreachable\" }\l y -= 1i;\l }\l y -= 1i;\l x -= 1i;\l }\l"];
|
|
N8[label="(dummy_node)"];
|
|
N9[label="expr \'inner:\l loop {\l if x == 1i { continue \'outer ; \"unreachable\" }\l if y >= 1i { break ; \"unreachable\" }\l y -= 1i;\l }\l"];
|
|
N10[label="expr x"];
|
|
N11[label="expr 1i"];
|
|
N12[label="expr x == 1i"];
|
|
N13[label="expr continue \'outer"];
|
|
N14[label="(dummy_node)"];
|
|
N15[label="expr \"unreachable\""];
|
|
N16[label="block { continue \'outer ; \"unreachable\" }"];
|
|
N17[label="expr if x == 1i { continue \'outer ; \"unreachable\" }"];
|
|
N18[label="expr y"];
|
|
N19[label="expr 1i"];
|
|
N20[label="expr y >= 1i"];
|
|
N21[label="expr break"];
|
|
N22[label="(dummy_node)"];
|
|
N23[label="expr \"unreachable\""];
|
|
N24[label="block { break ; \"unreachable\" }"];
|
|
N25[label="expr if y >= 1i { break ; \"unreachable\" }"];
|
|
N26[label="expr 1i"];
|
|
N27[label="expr y"];
|
|
N28[label="expr y -= 1i"];
|
|
N29[label="block {\l if x == 1i { continue \'outer ; \"unreachable\" }\l if y >= 1i { break ; \"unreachable\" }\l y -= 1i;\l}\l"];
|
|
N30[label="expr 1i"];
|
|
N31[label="expr y"];
|
|
N32[label="expr y -= 1i"];
|
|
N33[label="expr 1i"];
|
|
N34[label="expr x"];
|
|
N35[label="expr x -= 1i"];
|
|
N36[label="block {\l \'inner:\l loop {\l if x == 1i { continue \'outer ; \"unreachable\" }\l if y >= 1i { break ; \"unreachable\" }\l y -= 1i;\l }\l y -= 1i;\l x -= 1i;\l}\l"];
|
|
N37[label="expr \"unreachable\""];
|
|
N38[label="block {\l let mut x = 16i;\l let mut y = 16i;\l \'outer:\l loop {\l \'inner:\l loop {\l if x == 1i { continue \'outer ; \"unreachable\" }\l if y >= 1i { break ; \"unreachable\" }\l y -= 1i;\l }\l y -= 1i;\l x -= 1i;\l }\l \"unreachable\";\l}\l"];
|
|
N0 -> N2;
|
|
N2 -> N3;
|
|
N3 -> N4;
|
|
N4 -> N5;
|
|
N5 -> N6;
|
|
N6 -> N8;
|
|
N8 -> N10;
|
|
N10 -> N11;
|
|
N11 -> N12;
|
|
N12 -> N13;
|
|
N13 -> N6[label="exiting scope_0 expr continue \'outer,\lexiting scope_1 stmt continue \'outer ;,\lexiting scope_2 block { continue \'outer ; \"unreachable\" },\lexiting scope_3 expr if x == 1i { continue \'outer ; \"unreachable\" },\lexiting scope_4 stmt if x == 1i { continue \'outer ; \"unreachable\" },\lexiting scope_5 block {\l if x == 1i { continue \'outer ; \"unreachable\" }\l if y >= 1i { break ; \"unreachable\" }\l y -= 1i;\l}\l,\lexiting scope_6 expr \'inner:\l loop {\l if x == 1i { continue \'outer ; \"unreachable\" }\l if y >= 1i { break ; \"unreachable\" }\l y -= 1i;\l }\l,\lexiting scope_7 stmt \'inner:\l loop {\l if x == 1i { continue \'outer ; \"unreachable\" }\l if y >= 1i { break ; \"unreachable\" }\l y -= 1i;\l }\l,\lexiting scope_8 block {\l \'inner:\l loop {\l if x == 1i { continue \'outer ; \"unreachable\" }\l if y >= 1i { break ; \"unreachable\" }\l y -= 1i;\l }\l y -= 1i;\l x -= 1i;\l}\l"];
|
|
N14 -> N15;
|
|
N15 -> N16;
|
|
N12 -> N17;
|
|
N16 -> N17;
|
|
N17 -> N18;
|
|
N18 -> N19;
|
|
N19 -> N20;
|
|
N20 -> N21;
|
|
N21 -> N9[label="exiting scope_0 expr break,\lexiting scope_1 stmt break ;,\lexiting scope_2 block { break ; \"unreachable\" },\lexiting scope_3 expr if y >= 1i { break ; \"unreachable\" },\lexiting scope_4 stmt if y >= 1i { break ; \"unreachable\" },\lexiting scope_5 block {\l if x == 1i { continue \'outer ; \"unreachable\" }\l if y >= 1i { break ; \"unreachable\" }\l y -= 1i;\l}\l"];
|
|
N22 -> N23;
|
|
N23 -> N24;
|
|
N20 -> N25;
|
|
N24 -> N25;
|
|
N25 -> N26;
|
|
N26 -> N27;
|
|
N27 -> N28;
|
|
N28 -> N29;
|
|
N29 -> N8;
|
|
N9 -> N30;
|
|
N30 -> N31;
|
|
N31 -> N32;
|
|
N32 -> N33;
|
|
N33 -> N34;
|
|
N34 -> N35;
|
|
N35 -> N36;
|
|
N36 -> N6;
|
|
N7 -> N37;
|
|
N37 -> N38;
|
|
N38 -> N1;
|
|
}
|