Andrew Kelley
39acc4c020
zig fmt: for loops
2021-02-09 20:08:40 -07:00
Andrew Kelley
1c79eea125
zig fmt: while loops
2021-02-09 17:23:57 -07:00
Andrew Kelley
bcafc51e58
zig fmt: fn protos and anytype
2021-02-09 14:41:50 -07:00
Andrew Kelley
b1d8a0a5a6
zig fmt: asm expressions
2021-02-08 22:03:23 -07:00
Isaac Freund
d869133a9f
zig fmt: implement switches
2021-02-08 15:41:31 -08:00
Isaac Freund
837cd748a8
zig fmt: fix block lbrace indent
2021-02-08 15:41:31 -08:00
Isaac Freund
aaf13a2bb3
zig fmt: implement break
2021-02-08 15:41:31 -08:00
Isaac Freund
57cec38e61
std/zig/ast: fix Tree.lastToken() for blocks
...
The fact that blocks may end in a semicolon but this semicolon is not
counted by recursive lastToken() evaluation on the sub expression causes
off-by-one errors for lastToken() on blocks currently.
To fix this, introduce BlockSemicolon and BlockTwoSemicolon following
the pattern used for trailing commas in e.g. builtin function arguments.
2021-02-07 14:51:37 -08:00
Isaac Freund
0e38362d24
zig fmt: split Slice and SliceSentinel
...
This saves 4 whole bytes in the common case where there is no sentinel.
2021-02-07 14:51:37 -08:00
Isaac Freund
1d71b19c0d
zig fmt: implement error set decls
2021-02-07 14:51:37 -08:00
Isaac Freund
bb7b5ee2ac
zig fmt: implement catch and return
2021-02-07 12:04:32 -08:00
Isaac Freund
0929fcbc34
zig fmt: implement slices
2021-02-07 12:04:32 -08:00
Isaac Freund
33915cb1ed
zig fmt: implement pointer types
...
rename PtrType => PtrTypeBitRange, SliceType => PtrType
This rename was done as the current SliceType is used for non-bitrange
pointers as well as slices and because PtrTypeSentinel/PtrTypeAligned
are also used for slices. Therefore using the same Ptr prefix for all
these pointer/slice nodes is an improvement.
2021-02-06 21:29:45 -08:00
Andrew Kelley
d898945786
zig fmt: builtin call with trailing comma
2021-02-05 20:38:30 -07:00
Andrew Kelley
409ca88829
zig fmt: trailing comma in fn parameter list
2021-02-05 17:46:15 -07:00
Andrew Kelley
16a2562c3f
zig fmt: implement container decls
2021-02-05 15:47:18 -07:00
Andrew Kelley
cf42ae178d
std.MultiArrayList: use @memset builtin for undefined
...
See comment for more details
2021-02-05 15:45:33 -07:00
Isaac Freund
0f3fa4d654
zig fmt: array types
2021-02-05 11:36:19 -08:00
Isaac Freund
6f3b93e2e8
zig fmt: struct and anon array initialization
2021-02-05 10:51:45 -08:00
Isaac Freund
3e960cfffe
zig fmt: float literal with exponent
2021-02-05 10:51:45 -08:00
Isaac Freund
0b4bb9b84f
std.MultiArrayList: implement review comments
2021-02-05 10:51:45 -08:00
Luuk de Gram
36df6a008f
Ensure function indices are correct and fix a memory leak
2021-02-05 18:06:25 +01:00
Luuk de Gram
aa3e0ff454
Create type declarations for extern functions and write the 'import' section
2021-02-05 18:06:20 +01:00
Andrew Kelley
7069459a76
zig fmt: implement struct init
2021-02-04 19:59:06 -07:00
Andrew Kelley
8e46d06650
zig fmt: implement fn protos and defers
2021-02-04 16:38:29 -07:00
Michael Dusan
300ebbd560
target: map zig ppc32 → llvm ppc
...
- llvm does not accept `ppc32` as a CPU type
closes #7947
2021-02-04 14:22:38 -08:00
Asherah Connor
4428acf0f7
zig fmt: deref, unwrap optional
2021-02-04 10:49:45 -08:00
Koakuma
448a28325c
Fix previous %fp calculation
2021-02-05 00:28:07 +07:00
Koakuma
1eb2e48014
std.debug.StackIterator: account for SPARC %fp quirk
...
On SPARC, previous %fp is saved with a 14 slots offset from current %fp+bias.
Also account for the bias constant at the new_fp calculation.
2021-02-04 20:51:41 +07:00
Andrew Kelley
725adf8332
zig fmt: builtin calls and array access
2021-02-03 22:12:11 -07:00
Andrew Kelley
f5279cbada
zig fmt: implement top-level fields
2021-02-03 17:02:12 -07:00
Rocknest
2d447b57cc
fix typo in comment
2021-02-02 20:07:08 -08:00
Andrew Kelley
1a83b29bea
zig fmt: implement if, call, field access, assignment
2021-02-02 21:05:53 -07:00
Frank Denis
7a01d396ee
siphash: update the link to the SipHash paper
2021-02-02 11:17:14 +02:00
Andrew Kelley
0c6b98b825
zig fmt: implement simple test with doc comments
2021-02-01 21:31:41 -07:00
Andrew Kelley
272a0ab359
zig fmt: implement "line comment followed by top-level comptime"
2021-02-01 20:11:55 -07:00
Andrew Kelley
20554d32c0
zig fmt: start reworking with new memory layout
...
* start implementation of ast.Tree.firstToken and lastToken
* clarify some ast.Node doc comments
* reimplement renderToken
2021-02-01 17:23:49 -07:00
Andrew Kelley
102d954220
Merge pull request #7827 from Snektron/spirv-setup
...
Stage 2: SPIR-V setup
2021-02-01 12:49:51 -08:00
Jonathan Marler
06b29c8546
std.json large number support
2021-02-01 12:40:49 -08:00
Martin Wickham
1032a69321
Dupe strings on all public api points for std.build
2021-02-01 12:31:24 -08:00
Luuk de Gram
c0685458a2
Define wasm constants
...
Update link.Wasm.zig to use std.wasm for its constants
Make opcodes u8 and non-exhaustive
Update test and rename 'spec' to 'wasm'
2021-02-01 12:28:25 -08:00
Cameron Conn
683d3f7242
Don't read more bytes than exist in MsfStream ( #7839 )
2021-02-01 15:27:39 -05:00
Vincent Rischmann
16905d96f7
Fixes for std.Thread.Condition ( #7883 )
...
* thread/condition: fix PthreadCondition compilation
* thread/condition: add wait, signal and broadcast
This is like std.Thread.Mutex which forwards calls to `impl`; avoids
having to call `cond.impl` every time.
* thread/condition: initialize the implementation
2021-02-01 15:16:39 -05:00
Andrew Kelley
66c0fe4f90
Merge pull request #7922 from daurnimator/comptime-json-fields
...
std.json support for comptime fields
2021-02-01 12:11:36 -08:00
Frank Denis
a03f9548d3
std/math/big/int: normalize after a right shift
...
After a right shift, top limbs may be all zero. However, without
normalization, the number of limbs is not going to change.
In order to check if a big number is zero, we used to assume that the
number of limbs is 1. Which may not be the case after right shifts,
even if the actual value is zero.
- Normalize after a right shift
- Add a test for that issue
- Check all the limbs in `eqlZero()`. It may not be necessary if
callers always remember to normalize before calling the function.
But checking all the limbs is very cheap and makes the function less
bug-prone.
2021-02-01 12:10:01 -08:00
Andrew Kelley
bf8fafc37d
stage2: tokenizer does not emit line comments anymore
...
only std.zig.render cares about these, and it can find them in the
original source easily enough.
2021-01-31 21:57:48 -07:00
daurnimator
e0a04e7f67
allow more complex comptime fields in std.json
2021-02-01 01:01:50 +11:00
daurnimator
f88bb56ee5
std.json union handling should bubble up AllocationRequired
2021-02-01 01:00:15 +11:00
daurnimator
33c0a01b08
std.json support for comptime fields
...
Closes #6231
2021-01-31 23:41:32 +11:00
Veikka Tuominen
fdc875ed00
Merge pull request #7750 from tadeokondrak/6609-tagtype-tag
...
Remove @TagType; std.meta.TagType -> std.meta.Tag
2021-01-31 12:37:12 +02:00