./lang/zig, Programming language designed for robustness and clarity

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 0.6.0nb1, Package name: zig-0.6.0nb1, Maintainer: pkgsrc-users

Zig is an open-source programming language designed for robustness,
optimality, and clarity.

* Robust - behavior is correct even for edge cases such as out
of memory.
* Optimal - write programs the best way they can
behave and perform.
* Clear - precisely communicate your intent
to the compiler and other programmers. The language imposes a
low overhead to reading code.


Required to run:
[shells/bash] [lang/clang] [lang/llvm] [devel/lld]

Required to build:
[pkgtools/cwrappers]

Master sites:

SHA1: 5bafb82d28d058add63b106dfa6119f511faae8e
RMD160: beb56f6c688687711e01ab67bf0791584f8af3e6
Filesize: 10106.984 KB

Version history: (Expand)


CVS history: (Expand)


   2020-06-16 13:01:42 by Nikita | Files touched by this commit (1)
Log message:
Add lang/zig/application, common mk to handle build.zig applications.
   2020-06-02 10:25:05 by Adam Ciarcinski | Files touched by this commit (1689)
Log message:
Revbump for icu
   2020-05-14 19:30:50 by Nia Alarie | Files touched by this commit (1)
Log message:
zig: Installs a script that requires bash.

Replace the interpreter so this doesn't fail with PKG_DEVELOPER.

Please set PKG_DEVELOPER=yes to detect problems like this!
   2020-04-18 10:08:07 by Adam Ciarcinski | Files touched by this commit (12) | Package removed
Log message:
zig: updated to 0.6.0

Language Changes in 0.6.0:

Improved names of error sets when using merge error sets operator (||).
pub syntax for container fields is removed.
Type coercion from *[0]T to E![]const T is now allowed. This is an unambiguous, \ 
safe cast.
asm now accepts comptime-known values, rather than requiring string literal syntax.
Removed compile error for peer result ?comptime_int and null.
Ability to pass comptime types and non comptime types to same parameter.
@typeOf is renamed to @TypeOf. zig fmt automatically performs the conversion, \ 
and the next release of Zig after this one will remove the automatic conversion.
Ability to switch on pointer types.
Multiline strings in test and library names are disallowed.
Zig language no longer requires the expression a else unreachable with comptime \ 
a to produce a comptime result.
Timon Kruiper implemented casting between [*c]T and ?[*:0]T on fn parameter.
Timon Kruiper improved @typeInfo to lazily resolve declarations. This way all \ 
the declarations in a namespace won't be resolved until the user actually uses \ 
the declarations slice in the builtin TypeInfo union.
@ptrCast supports casting a slice to a pointer.
LemonBoy implemented peer type resolution between ?[]T and *[N]T.
There is now peer type resolution between mixed-const []T and *[N]T.
   2020-03-25 23:27:20 by Nia Alarie | Files touched by this commit (12) | Package updated
Log message:
zig: Update to 0.5.0. Unbreak.

This version of zig supports the current version of llvm in pkgsrc (9).

Some patches from TheLemonMan were backported by me to fix NetBSD support.

Release notes: https://ziglang.org/download/0.5.0/release-notes.html
   2020-03-20 12:42:39 by Tobias Nygren | Files touched by this commit (1) | Package updated
Log message:
zig: mark as BROKEN (needs update due to lang/llvm update)
   2019-06-02 17:02:27 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
zig: updated to 0.4.0

0.4.0:
LLVM 8
FreeBSD Support
NetBSD Support
WebAssembly Support
64-bit ARM Linux Support
UEFI Support
Tier System
   2019-02-27 11:46:16 by Maya Rashish | Files touched by this commit (25) | Package removed
Log message:
zig: update to today's (2019-02-27) snapshot of master.

Allows us to drop all the local patches that were merged upstream.
lld is not a dependency, zig by default bundles lld and doesn't use
an external one. comment it.

Andrew Kelley (62):
      Merge pull request #1975 from BenoitJGirard/master
      Merge pull request #1963 from matthew-mcallister/dedup-compile-log-warning
      Merge pull request #1972 from coypoop/netbsd
      README: add NetBSD to support table
      pull request fixups
      Merge branch 'emekoi-fix-1711'
      export _mh_execute_header with weak linkage
      docs: note top level declarations are order-independent
      docs: shadowing
      zig fmt: fix infix operator before multiline string literal
      add test for 74bdc1d1f898705
      Merge branch 'kristate-zig-backport-issue1944'
      remove --no-rosegment workaround now that valgrind bug is fixed
      valgrind client requests for undefined values
      Merge branch 'slice-deref-failure' of \ 
https://github.com/matthew-mcallister/zig into \ 
matthew-mcallister-slice-deref-failure
      pull request fixups
      Merge branch 'matthew-mcallister-slice-deref-failure'
      deduplicate compile errors for undeclared identifiers
      packed structs support comptime bitcasting
      extern structs support comptime bitcasting
      `@sliceToBytes` works at comptime
      better handling of arrays in packed structs
      better field access of types which have one possible value
      fix `@bitCast` when src/dest types have mismatched handle_is_ptr
      docs for packed structs
      add regression test for bitcast to array
      implement vector negation
      better libc detection (#1996)
      introduce std.debug.captureStackTrace
      fix `zig fmt` arg0 handled incorrectly
      add `zig cc` command to act like a C compiler
      zig cc: remove "polly" which was an undefined symbol on macos
      zig cc: work around clang calling GetCommandLine on Windows
      Merge pull request #2003 from ziglang/zig-cc
      first class support for compiling C code
      building DLLs on Windows works better
      `@cImport` works with `--cache on`
      Merge pull request #2005 from ziglang/c-source
      zig build: 2 improvements
      fix infinite recursion in type_has_one_possible_value
      delete incorrect TODO comment
      add docs for zero bit types and pointers to zero bit types
      fix not finding libgcc_s when looking for native libc
      add a compile error note when C import fails and not linking libc
      better error message when forgetting to link against libc
      add a regression test for #704
      fix incorrectly trying to memset at comptime
      fix the libc compile error tests to only run on linux
      use -nobuiltininc when compiling c code
      use -nostdinc++ when compiling C code
      use -nostdinc and sometimes -nolibc when compiling C code
      breaking changes to the way targets work in zig
      fix regressions on Windows
      introduce sys_include_dir for when sys/* files are not with stdlib.h
      add builder.addFmt API and use it to test stage1 zig fmt
      fix .gitignore file and add commit missing std lib file
      add test coverage for binary OR on error sets
      add test coverage for type used as switch case
      fix handling when there are multiple externs and
      fix stage1 zig fmt on macos
      improve docs for unions and switching on tagged unions
      windows returns EINVAL for fopen when there is an asterisk in the name

Benoit Jauvin-Girard (1):
      Fix std.math.powi so powi(x, +-0) = 1 for any x.

BenoitJGirard (2):
      Merge pull request #1 from ziglang/master
      Merge pull request #2 from ziglang/master

Jimmi HC (1):
      Fixed std.testing.expectEqual

John Schmidt (2):
      Some function doc tweaks (#1961)
      Add priority queue

LemonBoy (4):
      Silence gcc8 class-memaccess warnings
      Add align attribute for params pointers
      Translate parameterless C functions (#1978)
      Prevent crash in tagged enums rendering (#1986)

Matthew McAllister (3):
      Fix lvalue dereference type checking
      Deduplicate compile log statement warnings
      Check for duped error messages in compile tests

Maya Rashish (3):
      Add NetBSD support
      Undo local, unneeded patch
      Don't provide a bogus definition of EVFILT_USER

Quetzal Bradley (1):
      fix openWriteNoClobber and add test

emekoi (1):
      make @enumToInt work on union(enum)

kristopher tate (1):
      src/analyze.cpp: default to using `param_node` upon callconv error;