zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

test_errdefer_capture.zig (437B) - Raw


      1 const std = @import("std");
      2 
      3 fn captureError(captured: *?anyerror) !void {
      4     errdefer |err| {
      5         captured.* = err;
      6     }
      7     return error.GeneralFailure;
      8 }
      9 
     10 test "errdefer capture" {
     11     var captured: ?anyerror = null;
     12 
     13     if (captureError(&captured)) unreachable else |err| {
     14         try std.testing.expectEqual(error.GeneralFailure, captured.?);
     15         try std.testing.expectEqual(error.GeneralFailure, err);
     16     }
     17 }
     18 
     19 // test