some junk
parent
2be7a1be45
commit
499d20c5db
@ -0,0 +1,21 @@
|
||||
const std = @import("std");
|
||||
const expect = std.testing.expect;
|
||||
|
||||
test "comptime vars" {
|
||||
var x: i32 = 1;
|
||||
comptime var y: i32 = 1;
|
||||
|
||||
x += 1;
|
||||
y += 1;
|
||||
|
||||
expect(x == 2);
|
||||
expect(y == 2);
|
||||
|
||||
if (y != 2) {
|
||||
// this compile error never triggers. y is a comptime variable, which
|
||||
// makes `y != 2` knowable at comptime (would we call this a comptime
|
||||
// expression?). the "if" statement is statically evaluated. I don't
|
||||
// get it.
|
||||
@compileError("wrong y value");
|
||||
}
|
||||
}
|
@ -0,0 +1,12 @@
|
||||
const std = @import("std");
|
||||
const builtin = std.builtin;
|
||||
const big = @as(f64, 1 << 40);
|
||||
|
||||
export fn foo_strict(x: f64) f64 {
|
||||
return x + big - big;
|
||||
}
|
||||
|
||||
export fn foo_optimized(x: f64) f64 {
|
||||
@setFloatMode(.Optimized);
|
||||
return x + big - big;
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
const std = @import("std");
|
||||
const os = std.os;
|
||||
const print = std.debug.print;
|
||||
|
||||
pub fn main() !void {
|
||||
var buf: [256]u8 = undefined;
|
||||
var fba = std.heap.FixedBufferAllocator.init(&buf);
|
||||
var allocator = &fba.allocator;
|
||||
|
||||
const cwd = try allocator.alloc(u8, 256);
|
||||
defer allocator.free(cwd);
|
||||
|
||||
const z = try os.getcwd(cwd);
|
||||
print("{}\n", .{z});
|
||||
}
|
Loading…
Reference in New Issue