Andrew Kelley
a85f41ec2c
test-stack-traces: relax parsing rules
...
* accept forward and backward slashes in file paths
* strip multiple extensions; e.g. if the basename is "test.exe.obj"
then it strips to "test".
2022-08-19 16:45:16 -07:00
Jakub Konka
10b95d89f8
coff: change improperly used packed struct into extern struct
2022-08-19 16:45:16 -07:00
Andrew Kelley
437311756d
LLVM: add DLL export attribute
...
This was present in stage1 but missing from self-hosted.
2022-08-19 16:45:16 -07:00
Andrew Kelley
35f62bc7ae
CI: windows: don't create build directory
...
Simplify the script by not creating an unnecessary build directory and
then changing directories to and from it.
2022-08-19 16:45:16 -07:00
Andrew Kelley
c4466496ff
build: hook up -Dskip-stage2-tests and remove test-toolchain
2022-08-19 16:45:16 -07:00
Andrew Kelley
5be2e8f941
CI: update windows tarball
...
This includes a few recent bug fixes which may solve the Windows CI
failure.
2022-08-19 16:45:16 -07:00
Andrew Kelley
445b33cfc0
fix std.os.windows.PathSpace.span
...
it was returning a pointer to a parameter.
2022-08-19 16:45:16 -07:00
Andrew Kelley
28e95b3240
CI: drone: simplify
...
Instead of a switch in a bash file we just properly name
the pipeline steps.
Also use zig build to produce the release artifact.
2022-08-19 16:45:15 -07:00
Andrew Kelley
5b486b1851
CI: use zig build to produce release artifact
...
For both macOS and FreeBSD.
2022-08-19 16:45:15 -07:00
Andrew Kelley
a8f86291d2
CI: update freebsd tarball
...
This updates to a stage3 freebsd tarball.
2022-08-19 16:45:15 -07:00
Andrew Kelley
7cf6930e24
CI: macos: set release mode for zig and simplify
2022-08-19 16:45:15 -07:00
Andrew Kelley
9f43ebd6ef
CI: windows: build stage3 directly from dev kit
2022-08-19 16:45:15 -07:00
Andrew Kelley
d75d40dfdf
build: make docs a separate step than test
2022-08-19 16:45:15 -07:00
Andrew Kelley
7346600517
CI: avoid concurrent jobs tripping over each other
2022-08-19 16:45:15 -07:00
Andrew Kelley
e3ccea70dd
CI: isolate zig-cache for parallel debug/release builds
2022-08-19 16:45:15 -07:00
Andrew Kelley
09ec9b0315
langref: update to new error message
2022-08-19 16:45:15 -07:00
Andrew Kelley
a73b3a0d70
CI: simplify x86 linux test instructions
2022-08-19 16:45:15 -07:00
Andrew Kelley
06c42a0c68
CI: test both stage3-debug and stage3-release on x86-linux
2022-08-19 16:45:15 -07:00
Andrew Kelley
507aae4a1a
make self-hosted the default compiler
...
stage1 is available behind the -fstage1 flag.
closes #89
2022-08-19 16:45:15 -07:00
Andrew Kelley
73bbd1069a
build: remove the option to omit stage2
2022-08-19 16:45:15 -07:00
r00ster91
39f43fea8d
fix: fix off-by-one for leading zeroes
2022-08-20 01:45:34 +03:00
Andrew Kelley
be2bd5848a
Merge pull request #12472 from ziglang/stage2-stack-protector
...
stage2: implement stack protectors
2022-08-19 06:41:34 -04:00
Andrew Kelley
fdb934a157
stage2: disable stack-protector on wasm, matching stage1
...
The CI gave me: unknown import: `env::__stack_chk_fail` has not been
defined
2022-08-19 03:41:13 -07:00
Andrew Kelley
d6ba66e50d
Sema: avoid false positive error for linking libc
...
when extern c functions are called.
2022-08-19 03:41:13 -07:00
Andrew Kelley
c0b7f20893
stage2: implement stack protectors
...
This is one of the final remaining TODOs for the LLVM backend.
2022-08-19 03:41:13 -07:00
Andrew Kelley
2ccaa5414b
Merge pull request #12145 from ziglang/fixes
...
More ABI size and alignment fixes
2022-08-19 04:56:08 -04:00
Andrew Kelley
150786e83c
test harness: fix handling of object format
...
Follow-up to b975f7a56fec9e0e7aca9832282bc772c743d731.
2022-08-18 22:02:55 -07:00
Andrew Kelley
5e989fcb67
stage2: pointers to comptime-only types are comptime-only
...
This is a partial revert of c5ba941b77fbdb06841f28142420c6786f2a4d0c.
2022-08-18 22:02:10 -07:00
Andrew Kelley
cee82c7ce4
improved ABI alignment/size for >= 128-bit integers
...
* riscv64: adjust alignment and size of 128-bit integers.
* take ofmt=c into account for ABI alignment of 128-bit integers and
structs.
* Type: make packed struct support intInfo
* fix f80 alignment for i386-windows-msvc
2022-08-18 20:34:36 -07:00
Andrew Kelley
b975f7a56f
std.Target gains ObjectFormat field
2022-08-18 18:58:28 -07:00
Andrew Kelley
517eb73b23
LLVM: disable the ABI size safety check
...
There still more instances of this check being tripped during behavior
tests that we need to fix before we can enable this.
2022-08-18 17:11:34 -07:00
Andrew Kelley
4552ccb685
stage2: make @Vector ABI size agree with LLVM
2022-08-18 17:11:34 -07:00
Andrew Kelley
6e313eb110
stage2: agree with LLVM that @alignOf(u128) is 8
...
on x86_64 and similar targets.
2022-08-18 17:11:32 -07:00
Andrew Kelley
c5ba941b77
stage2: all pointers have runtime bits
2022-08-18 16:02:29 -07:00
Ben Fiedler
7d674d5fb6
build: Allow comptime_int in OptionsStep.addOption
2022-08-18 23:00:44 +02:00
Jakub Konka
b12992cb01
macho: do not open file handle when building static archive
...
Firstly, opening a file handle is not really needed since we won't even
use it, and secondly, this can cause AccessDenied errors on Windows
when trying to move a directory from zig-cache/tmp/ to zig-cache/o/
since, without POSIX semantics, it is illegal to move directories
with open handles to any of its resources.
2022-08-18 15:54:09 -04:00
Sage Hane
f6459721e5
std.build: Fix typo in LibExeObjStep.runEmulatable's assertion
2022-08-18 20:08:25 +03:00
Eric Joldasov
b97ae88898
std.zig.system.NativeTargetInfo: look for a shebang line in /usr/bin/env, if any
2022-08-18 19:57:50 +03:00
zooster
4055e6055b
AstGen: disallow leading zeroes in int literals and int types
...
This makes `0123` and `u0123` etc. illegal.
I'm now confident that this is a good change because
I actually caught two C header translation mistakes in `haiku.zig` with this.
Clearly, `0123` being octal in C (TIL) can cause confusion, and we make this easier to read by
requiring `0o` as the prefix and now also disallowing leading zeroes in integers.
For consistency and because it looks weird, we disallow it for integer types too (e.g. `u0123`).
Fixes #11963
Fixes #12417
2022-08-18 19:54:51 +03:00
Loris Cro
2523b443a4
Merge pull request #12477 from der-teufel-programming/master
...
Autodoc: HTML files generation
2022-08-18 18:05:11 +02:00
Loris Cro
53e971226d
autodoc: minor pr cleanup
2022-08-18 18:02:19 +02:00
Veikka Tuominen
b038dba06b
Merge pull request #12462 from Vexu/stage2-noreturn
...
Stage2: improve behavior of noreturn
2022-08-18 17:18:57 +03:00
Der Teufel
51a4861a08
Fixed Docgen.zig formatting
2022-08-18 15:44:42 +02:00
Der Teufel
f0bfdf9766
Fixed stage1 compilation error
2022-08-18 15:33:56 +02:00
Luuk de Gram
4f2143becc
link/Wasm: improve symbol resolution
...
This adds additional checks during symbol resolution:
- Ensures function signatures match when a symbol will be replaced.
- Ensures global types match when the symbol is being replaced.
- When both symbols are undefined, ensures they have a matching module name.
Those changes ensure the result will pass the validator when
the runtime compiles the Wasm module.
Additionally, this also slightly changes the behavior when both
the existing symbol and new symbol are both defined. Rather than
always resulting in a collision, it only results in a collision
when both are also weak. Else, the non-weak symbol will be picked.
2022-08-18 14:17:01 +02:00
Luuk de Gram
63c25cc1cc
wasm: fix callInstrinsic return value
...
Rather than storing it in a local and returning that,
we now keep this on the stack as all internal functions
expect it to be on the stack already and therefore were
generating extra `local.set` instructions.
2022-08-18 14:17:01 +02:00
der-teufel-programming
3ed9cdc1cc
Merge branch 'ziglang:master' into master
2022-08-18 14:10:47 +02:00
Der Teufel
656b9429d0
autodoc: An attempt at generating HTML files from all imported source
...
files. Files generated from the standard library could be considered
for placing with main.js and index.html in lib/docs. Paths should
reflect packages in the future.
2022-08-18 14:03:42 +02:00
Andrew Kelley
df507edffe
Merge pull request #12461 from ziglang/fix-12421
...
Fixes link-tests and `atomicSymLink` on Windows
2022-08-18 00:50:14 -04:00
Techatrix
79757f233d
fix memory leak in NativePaths.zig
2022-08-17 19:05:39 -04:00