Andrew Kelley
1034459170
Merge pull request #6243 from ifreund/uid-gid-cleanup
...
std: clean up usage of uid_t/gid_t, add seteuid/setegid to std.os
2020-09-03 18:05:59 -04:00
Andrew Kelley
17f36566de
stage2: upgrade Scope.Container decls from ArrayList to HashMap
2020-09-03 15:02:38 -07:00
Andrew Kelley
f2bbd8a548
Merge pull request #6242 from Vexu/stage2
...
Stage2: slicing and split container scope from file scope
2020-09-03 17:22:57 -04:00
Jakub Konka
dac1cd7750
Write out simple Mach-O object file
...
This commit adds enough Mach-O linker implementation to write out simple
Mach-O object file. Be warned however, the object file is largely incomplete:
misses relocation info, debug symbols, etc. However, it seemed like a
good starting to get the basic understanding right.
Signed-off-by: Jakub Konka <kubkon@jakubkonka.com>
2020-09-03 16:43:47 -04:00
Lachlan Easton
2a58e30bd5
std meta: fix use of alignOf in meta.cast
2020-09-03 14:11:04 -04:00
Andrew Kelley
39a80cf59e
Merge pull request #6238 from Aransentin/master
...
Add the "sync" family of functions
2020-09-03 14:07:36 -04:00
Kenta Iwasaki
50e3906951
os: return error.SocketNotListening for EINVAL on accept ( #6226 )
2020-09-03 13:57:08 -04:00
LemonBoy
969547902b
std: Fix silent overflow in float parsing code
...
A u64 can only hold 19 decimal digits, adjust the limit.
2020-09-03 18:14:19 +03:00
Vexu
1df0f3ac24
update uses of deprecated type field access
2020-09-03 18:10:40 +03:00
Vexu
4eeeda0f52
remove deprecated fields from types
2020-09-03 16:49:20 +03:00
Isaac Freund
d0d6647fdb
std: add seteuid/setegid to std.os
...
Currently these are only implemented for linux.
2020-09-03 15:22:43 +02:00
Isaac Freund
01a365f1b0
std: ensure seteuid/setegid do not change saved id
2020-09-03 15:16:26 +02:00
Isaac Freund
e8a2aecd2f
std: fix linux uid_t, use uid_t/gid_t in std.os
...
- correct uid_t from i32 to u32 on linux
- define uid_t and gid_t for OSes missing definitions
- use uid_t/gid_t instead of plain u32s throughout std.os
2020-09-03 15:08:37 +02:00
Vexu
6f0126e957
stage2: split Scope.Container from Scope.File
2020-09-03 15:06:45 +03:00
Vexu
1174cb1517
stage2: fix tokenizer float bug
2020-09-03 15:05:47 +03:00
Vexu
6ab0ac161e
stage2: slice return type analysis
2020-09-03 15:05:47 +03:00
Vexu
2a628fd401
stage2: astgen slice
2020-09-03 15:05:46 +03:00
Vexu
ff7c6e1e3c
stage2: astgen orelse
2020-09-03 15:05:43 +03:00
Vexu
9a59cdcd41
stage2: various small type fixes
2020-09-03 15:05:10 +03:00
Jens Goldberg
68818983ae
Split the sync tests into sync and fsync
2020-09-03 09:52:26 +00:00
Jens Goldberg
e747d2ba17
Add C declarations and tests for the sync functions
2020-09-03 07:49:18 +00:00
pfg
bf1d83482b
"Support" allocating 0 bit types
2020-09-02 22:28:37 -07:00
daurnimator
fb3c5b84ed
std: add fmt option to escape non-printable characters
2020-09-02 19:18:36 -04:00
Andrew Kelley
c86108dd63
Merge pull request #6229 from LemonBoy/fix-6054
...
ir: Typecheck the sentinel value in *[N:S1]T to [S2]T casts
2020-09-02 19:13:21 -04:00
Aransentin
25f6663304
Add the sync functions
2020-09-02 22:16:40 +00:00
Andrew Kelley
405c7215a8
Merge pull request #6194 from LakeByTheWoods/fmt_indentation
...
Refactor zig fmt indentation. Remove indent from rendering code
2020-09-02 18:14:28 -04:00
Lachlan Easton
bb848dbeee
zig fmt: Patch rename stream to ais (auto indenting stream) & other small refactors
2020-09-02 20:16:28 +10:00
LemonBoy
5f31d54064
std: ArrayList.initCapacity now respects the specified cap
...
Don't use the user-supplied cap as starting point for a resize. Doing so
overallocates memory and thus negates the whole point of specifying a
precise cap value.
2020-09-02 11:11:57 +02:00
LemonBoy
73a8c9beaa
std: Don't trust stat() size in readAllAlloc fns
...
Some files such as the ones in /proc report a st_size of zero, try to
read the file anyway if we hit that case.
2020-09-02 11:11:57 +02:00
Andrew Kelley
12ce6eb8f6
stage2: support dbg_stmt at comptime
2020-09-02 00:09:24 -07:00
Sahnvour
90ace40e07
Merge pull request #5999 from Sahnvour/hashmap
...
New hashmap implementation
2020-09-02 08:52:32 +02:00
Tadeo Kondrak
1b2154dfe2
builtin: Add TypeInfo.StructField.is_comptime
2020-09-02 00:17:59 -04:00
Sahnvour
575fbd5e35
hash_map: rename to ArrayHashMap and add new HashMap implementation
2020-09-02 00:17:50 +02:00
Andrew Kelley
3f7cb14b26
Merge pull request #6225 from ziglang/stage2-comptime
...
stage2: introduce the ability for Scope.Block to be comptime
2020-09-01 15:44:45 -04:00
Andrew Kelley
4c13d020db
stage2: proper split of requireRuntimeBlock and requireFunctionBlock
...
* improve the ZIR generated of variable decls
- utilize the same ZIR for the type and init value when possible
- init value gets a result location with the variable type.
no manual coercion is required.
* no longer use return instructions to extract values out of comptime
blocks. Instead run the analysis and then look at the corresponding
analyzed instruction, relying on the comptime mechanism to report
errors when something could not be comptime evaluated.
2020-09-01 12:39:47 -07:00
pwzk
baa734c42a
Fixing dylib search path
2020-09-01 13:53:12 -04:00
LemonBoy
dd4994a4e4
std: Fix C-string with missing NUL terminator
...
Spotted thanks to the stricter conversion rules.
2020-09-01 18:45:35 +02:00
LemonBoy
c51b871c45
ir: Typecheck the sentinel value in *[N:S1]T to [S2]T casts
...
Closes #6054
2020-09-01 17:29:10 +02:00
Lachlan Easton
7841c9b7d1
zig fmt: Fix merge errors
2020-09-01 21:59:27 +10:00
Lachlan Easton
671b3abe5d
Merge remote-tracking branch 'ziglang/master' into fmt_indentation
2020-09-01 18:41:23 +10:00
Andrew Kelley
717b0e8275
stage2: introduce the ability for Scope.Block to be comptime
...
This gives zir_sema analysis the ability to check if the current scope
is expected to be comptime.
2020-08-31 23:34:58 -07:00
Lachlan Easton
bc24b86d82
zig fmt: Fix regression not covered by testing
2020-09-01 13:19:34 +10:00
Andrew Kelley
26140678a5
ci: skip compile error tests on Windows
...
We're up against the 6 hour limit so this is a time-saving workaround.
Compile error tests are generally not OS-specific so the coverage from
the other platforms should be sufficient.
2020-08-31 14:54:05 -07:00
Jan200101
2148336a81
follow filesystem hierarchy standard when adding lib directories
2020-08-31 17:44:43 -04:00
Andrew Kelley
8dc58a4e94
Merge pull request #6208 from tadeokondrak/remove-@OpaqueType
...
Remove @OpaqueType
2020-08-31 17:44:03 -04:00
Andrew Kelley
4e97cf50d2
readme: link to wiki page for installing from a package manager
2020-08-31 14:41:01 -07:00
Andrew Kelley
212fe21d68
zen of zig: reword the last one a little bit
2020-08-31 14:40:08 -07:00
Andrew Kelley
0d94cb932f
Merge pull request #6197 from LemonBoy/fix-6049
...
gpa: Fix bookkeeping logic
2020-08-31 17:38:17 -04:00
Tadeo Kondrak
82273f1a2a
translate_c: fix shadowing on nested blocks
2020-08-31 20:29:57 +03:00
Lachlan Easton
029ec456bc
zig fmt: Set indent_delta to 2 when rendering inline asm
2020-08-31 23:39:50 +10:00