diff --git a/BRANCH_TODO b/BRANCH_TODO deleted file mode 100644 index 066531ac3a..0000000000 --- a/BRANCH_TODO +++ /dev/null @@ -1,23 +0,0 @@ -Scratch pad for stuff to do before merging master -================================================= - -labeled break from a block - -better behavior for implicit casts. for example these introduce an extra allocation/memcpy: - var x: [1]i32 = [_]i32{1}; - var x = ([1]i32)([_]i32{1}); -whereas this one does not: - var x = [_]i32{1}; -but all 3 should be semantically identical - - -This example has less than ideal LLVM IR: -```zig -export fn entry() void { - _ = mul(true, 1) catch undefined; -} -pub fn mul(c: bool, answer: i32) error{Overflow}!i32 { - return if (c) error.Overflow else answer; -} -``` -It creates an unnecessary stack variable.