Andrew Kelley
652f4bdf62
disallow unknown-length pointer to opaque
...
This also means that translate-c has to detect when a pointer to
opaque is happening, and use `*` instead of `[*]`.
See #1059
2018-06-05 18:03:21 -04:00
Jimmi HC
02cb220faf
Renamed "(int/float literal)" to "comptime_int/float"
2018-06-05 11:14:43 +02:00
Andrew Kelley
e53b683bd3
Pointer Reform: proper slicing and indexing ( #1053 )
...
* enable slicing for single-item ptr to arrays
* disable slicing for other single-item pointers
* enable indexing for single-item ptr to arrays
* disable indexing for other single-item pointers
see #770
closes #386
2018-06-04 22:11:14 -04:00
Andrew Kelley
d21a1922eb
support `zig fmt: off` and `zig fmt: on` between top level decls
...
closes #1030
closes #1033
2018-06-04 12:15:02 -04:00
Andrew Kelley
11e7e03139
Merge branch 'zig-custom-format' of https://github.com/tgschultz/zig into tgschultz-zig-custom-format
...
I removed the code that checks for type signature and type.
A function named `format` is enough for zig to give it a try.
2018-06-04 11:06:55 -04:00
Andrew Kelley
96164ce613
disallow single-item pointer indexing
...
add pointer arithmetic for unknown length pointer
2018-06-04 01:39:57 -04:00
Andrew Kelley
f06bce5dda
introduce [*] for unknown length pointers
...
See #770
Currently it does not have any different behavior than `*`
but it is now recommended to use `[*]` for unknown length
pointers to be future-proof.
Instead of [ * ] being separate tokens as the proposal
suggested, this commit implements `[*]` as a single token.
2018-06-02 04:04:23 -04:00
Andrew Kelley
7b386ea242
fix build file template
...
See #1035
2018-06-01 21:51:54 -04:00
Arthur Elliott
08693411d2
fix typo ( #1034 )
2018-06-01 12:23:07 -04:00
Andrew Kelley
e29d12d821
fix incorrect address-of syntax on windows
2018-06-01 01:29:34 -04:00
Andrew Kelley
5f38a01ede
run zig fmt
2018-06-01 01:22:35 -04:00
Andrew Kelley
4d13ab07de
std.zig: update to new pointer syntax
2018-06-01 01:19:26 -04:00
Andrew Kelley
2f614c42fe
ir: rip out special logic for using addr-of instruction for types
...
See #588
2018-05-31 18:23:39 -04:00
Andrew Kelley
fcbb7426fa
use * for pointer type instead of &
...
See #770
To help automatically translate code, see the
zig-fmt-pointer-reform-2 branch.
This will convert all & into *. Due to the syntax
ambiguity (which is why we are making this change),
even address-of & will turn into *, so you'll have
to manually fix thes instances. You will be guaranteed
to get compile errors for them - expected 'type', found 'foo'
2018-05-31 17:28:07 -04:00
Andrew Kelley
a05acaf9fd
Add --color CLI option to zig fmt
...
It doesn't actually do terminal color yet because we need to add
cross platform terminal color abstractions. But it toggles between
the single line error reporting and the multiline error reporting.
See #1026
2018-05-30 18:26:09 -04:00
Andrew Kelley
ea58f4a5a9
run zig fmt on the codebase
2018-05-30 16:09:11 -04:00
Andrew Kelley
b082cd4580
zig fmt: field access does not cause spaces for slicing
...
See #1003
2018-05-30 16:08:40 -04:00
Andrew Kelley
84b1842026
zig fmt: space after fn in fn prototypes
...
See #1003
2018-05-30 15:50:01 -04:00
Andrew Kelley
93b51b0e40
spaces around slice operator if operands are infix
...
See #1003
2018-05-30 15:33:58 -04:00
Andrew Kelley
2c96f19fd3
std.zig.render returns bool of whether anything changed
...
zig fmt only renames files and prints to stdout for files which changed
2018-05-30 14:58:27 -04:00
tgschultz
940a854448
Fix MacOS CI Timer test failing...?
2018-05-30 13:38:41 -05:00
tgschultz
fb001f5e90
Fixed character handling
2018-05-30 12:18:24 -05:00
tgschultz
8938c16f38
Formatting
2018-05-30 10:41:48 -05:00
tgschultz
4e1d0a59fa
Minor typo
2018-05-30 10:24:27 -05:00
tgschultz
8fc52a94f4
Added custom formatter support, refactored fmt.format
2018-05-30 10:18:11 -05:00
Andrew Kelley
b0eebfa560
fix syntax of std/json_test.zig
...
See #663
2018-05-29 18:10:36 -04:00
Andrew Kelley
d172e3f3bb
fix AtomicFile for relative paths
...
closes #1017
2018-05-29 17:38:50 -04:00
Andrew Kelley
0c16cd2d0e
run zig fmt on the codebase
...
See #1003
2018-05-29 04:23:38 -04:00
Andrew Kelley
cdf30c31ea
zig fmt: fix implementation of firstToken() for fn call
2018-05-29 03:47:27 -04:00
Andrew Kelley
cd325e408e
zig fmt: fix extra space after comma before multi line string
2018-05-29 03:33:03 -04:00
Andrew Kelley
eda6898c5b
zig fmt: handle if and while indentation better
2018-05-29 03:15:12 -04:00
Andrew Kelley
530d175422
zig fmt: fix spacing when moving doc comment on var decls
2018-05-28 23:41:09 -04:00
Andrew Kelley
0d1b47362c
zig fmt: if-else with comment before else
2018-05-28 22:41:05 -04:00
Andrew Kelley
77ec81b035
zig fmt: respect line breaks in if-else
2018-05-28 22:22:01 -04:00
Andrew Kelley
71badebd08
zig fmt: respect line breaks after infix operators
2018-05-28 21:28:32 -04:00
Andrew Kelley
354ab1c5c8
zig fmt: render fn decl with trailing comma 1 line per param
2018-05-28 21:18:41 -04:00
Andrew Kelley
530da36352
zig fmt: fix enum decl with no trailing comma
...
See #1003
2018-05-28 17:43:17 -04:00
Andrew Kelley
6c1fda3f99
zig fmt: fix switch body indent
2018-05-28 17:09:55 -04:00
Andrew Kelley
fd13a75785
zig fmt: allow same line struct literal with no trailing comma
...
See #1003
2018-05-28 17:00:04 -04:00
Andrew Kelley
122a74724c
zig fmt: use simple newlines rather than empty comments to hint
...
now the first row of an array literal is the hint to zig fmt
for how long each row should be.
See #1003
2018-05-28 16:23:33 -04:00
Andrew Kelley
3fed10883b
zig fmt: array literals with no trailing comma all on one line
2018-05-26 23:25:04 -04:00
Andrew Kelley
afdfbc0367
zig fmt: delete empty comments that do nothing
2018-05-26 23:25:04 -04:00
Andrew Kelley
b184ae5ca5
run zig fmt on some of the codebase
...
See #1003
2018-05-26 23:00:29 -04:00
Andrew Kelley
118d41ef83
zig fmt: support array literal row size hint
...
See #1003
2018-05-26 22:59:46 -04:00
Andrew Kelley
349365d9a4
zig fmt: better multiline string formatting
2018-05-26 19:32:28 -04:00
Andrew Kelley
cabf7fa93b
zig fmt: fn calls with trailing comma with params on new lines
2018-05-26 18:44:10 -04:00
Andrew Kelley
b8d4e05361
zig fmt: handle empty block with comment inside
2018-05-26 18:29:14 -04:00
Andrew Kelley
7e900d28be
zig fmt: no space on switch range operator
2018-05-26 18:10:06 -04:00
Andrew Kelley
0bef1f9824
zig fmt: fix rendering of struct with no trailing comma on last field
2018-05-26 16:43:33 -04:00
Andrew Kelley
0ab888c639
zig fmt: parse extra comma in asm expressions
2018-05-26 16:37:55 -04:00