• Anna Liberty@mathstodon.xyz
    link
    fedilink
    arrow-up
    1
    ·
    14 hours ago

    @SorteKanin @kewjo Fuzzing! Zig is working on an integrated fuzzer that will work seamlessly with the testing system.

    And for those cases you don’t catch, there’s ReleaseSafe which have runtime checks to prevent illegal behavior.

    Zig removes a lot of the footguns of C and also provides a lot of the tools you’ll need anyway built-in. The debug allocator does leak-checking. You have to unwrap your nulls. There is compile-time duck-typing so generic data structures don’t have to rely on void pointers. Also no separate preprocessor language.

    • SorteKanin@feddit.dkOP
      link
      fedilink
      arrow-up
      1
      ·
      14 hours ago

      ReleaseSafe which have runtime checks to prevent illegal behavior

      To prevent some illegal behaviour. Again, I’m not an expert on Zig, but as far as I understand, even Release"Safe" is not actually memory safe.