Understand your Mac and iPhone more deeply by tracing the evolution of Mac OS X from prelease to Swift. John Siracusa delivers the details.
You've got two main options:
#include <stdio.h> | |
#include <string.h> | |
#include <sys/socket.h> | |
#include <sys/un.h> | |
#include <unistd.h> | |
int main() { | |
int fd = socket(PF_UNIX, SOCK_STREAM, 0); | |
if (fd == -1) { | |
perror("socket"); |
diff --git a/lib/compiler/build_runner.zig b/lib/compiler/build_runner.zig | |
index 01dc437208..fa836f0df4 100644 | |
--- a/lib/compiler/build_runner.zig | |
+++ b/lib/compiler/build_runner.zig | |
@@ -1096,8 +1096,9 @@ fn usage(b: *std.Build, out_stream: anytype) !void { | |
\\ --prefix-exe-dir [path] Where to install executables | |
\\ --prefix-include-dir [path] Where to install C header files | |
\\ | |
- \\ --release[=mode] Request release mode, optionally specifying a | |
- \\ preferred optimization mode: fast, safe, small |
test "pipeline" { | |
// SILLY PIPELINE EXAMPLE | |
// | |
// cat /etc/passwd | (code-filter) | sort > /tmp/out.txt | |
// |-- child[0] ---| |---- child[1] -----| | |
// | |
// note: not convinced splitting ChildBuilder/ChildProcess is ideal | |
var builder = .{ | |
try ChildBuilder.init(testing.allocator), |
diff --git a/CMakeLists.txt b/CMakeLists.txt | |
index 9c06d24715..26777640d8 100644 | |
--- a/CMakeLists.txt | |
+++ b/CMakeLists.txt | |
@@ -906,11 +906,7 @@ if(ZIG_SINGLE_THREADED) | |
else() | |
set(ZIG_SINGLE_THREADED_ARG "") | |
endif() | |
-if(ZIG_STATIC AND NOT MSVC) | |
- set(ZIG_STATIC_ARG "-Duse-zig-libcxx") |
const std = @import("std"); | |
pub fn main() void { | |
const oa: ?u32 = 0; | |
const ob: ?u32 = 1; | |
const oc: ?u32 = 2; | |
// pattern without "else" codepath | |
outer: { | |
const a = oa orelse break :outer; |
rm -fr zig-cache; zig test -Itest test/behavior.zig | |
lib/std/debug.zig:281:14: error: reached unreachable code | |
if (!ok) unreachable; // assertion failure | |
^~~~~~~~~~~ | |
lib/std/math.zig:133:11: note: called from here | |
assert(tolerance >= 0); | |
~~~~~~^~~~~~~~~~~~~~~~ | |
test/behavior/floatop.zig:382:36: note: called from here | |
try expect(math.approxEqAbs(f16, @log(a), 1, epsilon)); | |
~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~ |
[jacobly0-mac-f16-abi] tiberius▸ rm -fr zig-cache; zig2 test -Itest test/behavior.zig | |
Test [26/1667] test.align(@alignOf(T)) T does not force resolution of T... SKIP | |
Test [70/1667] test.simple coroutine suspend and resume... SKIP | |
Test [71/1667] test.pass parameter to coroutine... SKIP | |
Test [72/1667] test.suspend at end of function... SKIP | |
Test [73/1667] test.local variable in async function... SKIP | |
Test [74/1667] test.calling an inferred async function... SKIP | |
Test [75/1667] test.@frameSize... SKIP | |
Test [76/1667] test.coroutine suspend, resume... SKIP | |
Test [77/1667] test.coroutine suspend with block... SKIP |
/Users/mike/project/zig/work/llvm16c/stage1/zig.h:3215:1: error: use of undeclared identifier 'lo' | |
zig_float_builtins(128) | |
^ | |
/Users/mike/project/zig/work/llvm16c/stage1/zig.h:3169:5: note: expanded from macro 'zig_float_builtins' | |
zig_expand_concat(zig_float_negate_builtin_, zig_has_f##w)(w) \ | |
^ | |
/Users/mike/project/zig/work/llvm16c/stage1/zig.h:254:37: note: expanded from macro 'zig_expand_concat' | |
#define zig_expand_concat(lhs, rhs) zig_concat(lhs, rhs) | |
^ | |
/Users/mike/project/zig/work/llvm16c/stage1/zig.h:253:30: note: expanded from macro 'zig_concat' |
+ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc -I/opt/llvm-macos13.0-x86_64-16.0.0-release/include -I/Users/mike/project/zig/work/llvm16b -I/Users/mike/project/zig/work/llvm16b/_build -I/Users/mike/project/zig/work/llvm16b/src -I/Users/mike/project/zig/work/llvm16b/stage1 -g -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk -std=c99 -O0 -fno-stack-protector -MD -MT CMakeFiles/zig2.dir/compiler_rt.c.o -MF CMakeFiles/zig2.dir/compiler_rt.c.o.d -o CMakeFiles/zig2.dir/compiler_rt.c.o -c /Users/mike/project/zig/work/llvm16b/_build/compiler_rt.c | |
/Users/mike/project/zig/work/llvm16b/_build/compiler_rt.c:657:21: error: conflicting types for '__trunctfhf2' | |
zig_extern uint16_t __trunctfhf2(zig_f128); | |
^ | |
/Users/mike/project/zig/work/llvm16b/stage1/zig.h:3082:1: note: previous declaration is here | |
zig_convert_builtin(zig_f16, trunc, zig_f128, 2) | |
^ | |
/Users/mike/project/zig/work/llvm16b/stage1/zig.h:30 |