@@ -1498,26 +1498,28 @@ fn foo(a: u8) -> bool {
14981498}
14991499
15001500//! > graph
1501- Root: 4
1502- 4 EvaluateExpr { expr: ExprId(0), var_id: v0, next: NodeId(3) }
1503- 3 Upcast { input: v0, output: v1, next: NodeId(2) }
1504- 2 EqualsLiteral { input: v1, literal: 255, true_branch: NodeId(0), false_branch: NodeId(1) }
1501+ Root: 6
1502+ 6 EvaluateExpr { expr: ExprId(0), var_id: v0, next: NodeId(5) }
1503+ 5 Upcast { input: v0, output: v1, next: NodeId(4) }
1504+ 4 EqualsLiteral { input: v1, literal: 255, true_branch: NodeId(0), false_branch: NodeId(3) }
1505+ 3 EqualsLiteral { input: v1, literal: 256, true_branch: NodeId(0), false_branch: NodeId(2) }
1506+ 2 EqualsLiteral { input: v1, literal: 257, true_branch: NodeId(0), false_branch: NodeId(1) }
150515071 ArmExpr { expr: ExprId(4) }
150615080 ArmExpr { expr: ExprId(2) }
15071509
15081510//! > semantic_diagnostics
1509-
1510- //! > lowering_diagnostics
1511- error[E3009]: The value does not fit within the range of type core::integer::u8.
1511+ error[E2008]: The value does not fit within the range of type core::integer::u8.
15121512 --> lib.cairo:3:15
15131513 255 | 256 | 257 => false,
15141514 ^^^
15151515
1516- error[E3009 ]: The value does not fit within the range of type core::integer::u8.
1516+ error[E2008 ]: The value does not fit within the range of type core::integer::u8.
15171517 --> lib.cairo:3:21
15181518 255 | 256 | 257 => false,
15191519 ^^^
15201520
1521+ //! > lowering_diagnostics
1522+
15211523//! > lowered
15221524
15231525//! > ==========================================================================
@@ -2032,13 +2034,13 @@ Root: 19
203220340 ArmExpr { expr: ExprId(1) }
20332035
20342036//! > semantic_diagnostics
2035-
2036- //! > lowering_diagnostics
2037- error[E3009]: The value does not fit within the range of type core::integer::u256.
2037+ error[E2008]: The value does not fit within the range of type core::integer::u256.
20382038 --> lib.cairo:10:9
20392039 0x10000000000000000000000000000000000000000000000000000000000000000 => 7,
20402040 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
20412041
2042+ //! > lowering_diagnostics
2043+
20422044//! > lowered
20432045
20442046//! > ==========================================================================
@@ -2058,20 +2060,24 @@ fn foo(x: u256) -> felt252 {
20582060}
20592061
20602062//! > graph
2061- Root: 3
2062- 3 EvaluateExpr { expr: ExprId(0), var_id: v0, next: NodeId(2) }
2063- 2 Deconstruct { input: v0, outputs: [v1, v2], next: NodeId(1) }
2063+ Root: 7
2064+ 7 EvaluateExpr { expr: ExprId(0), var_id: v0, next: NodeId(6) }
2065+ 6 Deconstruct { input: v0, outputs: [v1, v2], next: NodeId(5) }
2066+ 5 Upcast { input: v1, output: v3, next: NodeId(4) }
2067+ 4 EqualsLiteral { input: v3, literal: 0, true_branch: NodeId(3), false_branch: NodeId(1) }
2068+ 3 Upcast { input: v2, output: v4, next: NodeId(2) }
2069+ 2 EqualsLiteral { input: v4, literal: 340282366920938463463374607431768211456, true_branch: NodeId(0), false_branch: NodeId(1) }
206420701 ArmExpr { expr: ExprId(2) }
206520710 ArmExpr { expr: ExprId(1) }
20662072
20672073//! > semantic_diagnostics
2068-
2069- //! > lowering_diagnostics
2070- error[E3009]: The value does not fit within the range of type core::integer::u256.
2074+ error[E2008]: The value does not fit within the range of type core::integer::u256.
20712075 --> lib.cairo:4:9
20722076 0x10000000000000000000000000000000000000000000000000000000000000000 => 1,
20732077 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
20742078
2079+ //! > lowering_diagnostics
2080+
20752081//! > lowered
20762082
20772083//! > ==========================================================================
@@ -2090,20 +2096,23 @@ fn foo(x: u256) -> felt252 {
20902096}
20912097
20922098//! > graph
2093- Root: 3
2094- 3 EvaluateExpr { expr: ExprId(0), var_id: v0, next: NodeId(2) }
2095- 2 Deconstruct { input: v0, outputs: [v1, v2], next: NodeId(1) }
2099+ Root: 7
2100+ 7 EvaluateExpr { expr: ExprId(0), var_id: v0, next: NodeId(6) }
2101+ 6 Deconstruct { input: v0, outputs: [v1, v2], next: NodeId(5) }
2102+ 5 Upcast { input: v1, output: v3, next: NodeId(4) }
2103+ 4 EqualsLiteral { input: v3, literal: 0, true_branch: NodeId(3), false_branch: NodeId(1) }
2104+ 3 Upcast { input: v2, output: v4, next: NodeId(2) }
2105+ 2 EqualsLiteral { input: v4, literal: 340282366920938463463374607431768211456, true_branch: NodeId(0), false_branch: NodeId(1) }
209621061 Missing
209721070 ArmExpr { expr: ExprId(1) }
20982108
20992109//! > semantic_diagnostics
2100-
2101- //! > lowering_diagnostics
2102- error[E3009]: The value does not fit within the range of type core::integer::u256.
2110+ error[E2008]: The value does not fit within the range of type core::integer::u256.
21032111 --> lib.cairo:4:9
21042112 0x10000000000000000000000000000000000000000000000000000000000000000 => 1,
21052113 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
21062114
2115+ //! > lowering_diagnostics
21072116error[E3004]: Match is non-exhaustive: `u256{low: _, high: _}` not covered.
21082117 --> lib.cairo:2:5-5:5
21092118 match x {
0 commit comments