Christoffer Lerno
3da9f73338
- Output into /.build/obj/<platform> by default.
...
- Output llvm/asm into llvm/<platform> and asm/<platform> by default.
- Don't delete .o files not produced by the compiler.
- Correctly handle in/out when interacting with inout.
2025-02-22 22:34:26 +01:00
Christoffer Lerno
855be92881
Regression with .gitkeep in project init. List.init incorrectly didn't have the first argument the allocator. Added .init to priority queue. Created mem thread allocator alias. Correctly handle ident aliases. Allow ident on builtin aliases.
2025-02-21 21:34:48 +01:00
Christoffer Lerno
9c60c2cb33
Change to avoid thread races during compilation.
2025-02-21 13:15:19 +01:00
Christoffer Lerno
b54d994475
Fix memcmp misuse in parsing asm args.
2025-02-21 09:46:56 +01:00
Christoffer Lerno
80e360d8dd
Dispose of copied module.
2025-02-20 23:25:25 +01:00
Christoffer Lerno
9f165342e2
Revert disposal
2025-02-20 22:41:44 +01:00
Christoffer Lerno
a2bfeb156d
Dispose of the LLVMModule
2025-02-20 22:36:00 +01:00
Christoffer Lerno
bb8c03777d
Fix address overread
2025-02-20 21:56:28 +01:00
Christoffer Lerno
79db06ecd1
Crash when trying to define a method macro that isn't @construct but has no arguments.
2025-02-20 15:51:21 +01:00
Christoffer Lerno
341a70bd5d
Implicitly unwrapped optional value in defer incorrectly copied #1982 .
2025-02-20 03:44:22 +01:00
Alex Veden
5046608d1f
added io::stdout().flush() - to force printing test name before possible deadlock
...
mem::scoped() and long jump resilience fixed #1963
fixed --test-nosort argument + extra test for teardown_fn memory leak
Some renaming. Simplify robust test allocator handling. Pop temp allocators in test runner.
`Thread` no longer allocates memory on posix.
Update unprintable struct output.
Correctly give an error if a character literal contains a line break.
2025-02-20 01:15:48 +01:00
Christoffer Lerno
d9e5926d57
Fix error when boolean combined with ??. First checkin of C3 tester (unfinished)
2025-02-19 01:02:58 +01:00
Christoffer Lerno
cbacd64987
Update tests to (Foo) { ... } syntax.
2025-02-18 18:53:30 +01:00
Christoffer Lerno
168c11e006
{| |} expression blocks deprecated.
2025-02-18 12:50:34 +01:00
Mateo Acuña
26362d5068
Improve crtbegin.o Lookup for Linux Targets ( #1975 )
...
* refactor linux crtbegin lookup to use architecture-specific glob paths
* Fixed incorrect function call to `get_linux_crt_begin_glob_path` (`get_linux_crt_begin_arch_glob`)
* Formatting
---------
Co-authored-by: Christoffer Lerno <christoffer@aegik.com >
2025-02-18 00:30:54 +01:00
Christoffer Lerno
e77d1fb646
- Increase precedence of (Foo) { 1, 2 }
...
- Add `--enable-new-generics` to enable `Foo{int}` generic syntax.
2025-02-18 00:26:22 +01:00
Christoffer Lerno
c41d551ead
Create 0.6.8
2025-02-18 00:26:22 +01:00
Christoffer Lerno
0509b40b21
- Fix issue when dereferencing a constant string.
...
- Fix problem where a line break in a literal was allowed.
2025-02-16 23:55:55 +01:00
Christoffer Lerno
6e11bdbd35
Fix issue where target was ignored for projects.
2025-02-16 23:31:03 +01:00
Christoffer Lerno
8a6e996442
Create release candidate 0.6.7
2025-02-16 01:24:51 +01:00
Christoffer Lerno
0dd1a93d0d
Regression String! a; char* b = a.ptr; would incorrectly be allowed.
2025-02-14 16:11:31 +01:00
Christoffer Lerno
7ca70b20be
Allow (Foo) { 1, 2 } syntax for compound literals.
2025-02-14 12:51:58 +01:00
Christoffer Lerno
6ca77065d8
Fix issue when parsing bitstructs, preventing them from implementing interfaces.
2025-02-13 21:51:22 +01:00
Christoffer Lerno
e96dce92cd
Issue when scalar expanding a boolean from a conditional to a bool vector #1954 .
2025-02-13 21:36:28 +01:00
Christoffer Lerno
cec9b21707
Missing end padding when including a packed struct #1966 .
2025-02-13 21:15:27 +01:00
Christoffer Lerno
8c58b31bbd
Remove <[]> experimental generic syntax.
2025-02-13 12:53:46 +01:00
Christoffer Lerno
1f856cacf5
HashMap is now Printable. Fix access inlining for enums. #1958
2025-02-12 23:11:46 +01:00
Christoffer Lerno
4961d0433f
- Circumvent Aarch64 miscompilations of atomics.
...
- Fixes to ByteBuffer allocation/free.
- Fix issue where compiling both for asm and object file would corrupt the obj file output.
2025-02-12 12:50:30 +01:00
Christoffer Lerno
79a4b6855b
- Detect unaligned loads #1951 .
...
- Fix issue where aligned bitstructs did not store/load with the given alignment.
2025-02-10 22:07:15 +01:00
Christoffer Lerno
86680279fa
Improve inference on ?? #1943 .
2025-02-10 16:20:33 +01:00
Christoffer Lerno
b46d3947dd
Postpone Xtensa addition.
2025-02-10 12:00:50 +01:00
Christoffer Lerno
c4f9efc8f5
Allow fn int test() => @pool() { return 1; } short function syntax usage #1906 .
2025-02-08 22:45:14 +01:00
Christoffer Lerno
69e30c19f8
Distinct inline void causes unexpected error if used in slice #1946 .
2025-02-08 20:33:08 +01:00
Christoffer Lerno
940874e349
Cleaner error message when missing comma in struct initializer #1941 .
2025-02-08 19:54:44 +01:00
Christoffer Lerno
c8e671d34b
Assert when using optional as init or inc part in a for loop #1942 .
2025-02-08 18:58:44 +01:00
Christoffer Lerno
fa4fb44779
Issue with defer copying when triggered by break or continue.
2025-02-08 00:14:01 +01:00
Christoffer Lerno
07e8779d4e
Fix fixup ordering in defer.
2025-02-07 23:12:34 +01:00
Christoffer Lerno
77db50bce8
Allow function types to have a calling convention. #1938
2025-02-07 22:03:15 +01:00
Christoffer Lerno
27e76fe59e
Project view refactoring.
2025-02-07 20:49:51 +01:00
Christoffer Lerno
d13f302ac8
Build options refactoring.
2025-02-07 16:04:44 +01:00
Christoffer Lerno
3e1e3e3e29
Incorrect error message when providing too many associated values for enum #1934 .
2025-02-07 10:44:53 +01:00
Christoffer Lerno
0388910c17
Cleanup.
2025-02-07 01:08:28 +01:00
Christoffer Lerno
4b984e12a5
Refactor build options.
2025-02-07 00:11:04 +01:00
Christoffer Lerno
4e717657bd
Remove not-yet-supported docs tool.
2025-02-06 23:23:24 +01:00
Fangrui Song
78dcda0bb2
Clean up some linker/C compiler options
...
-fno-pic/-fno-pie/-fpic/-fPIC/-fpie/-fPIE options belong to the same
famility where the last option wins. These options have no effect in the
link phase.
Clang and GCC usually pass `--eh-frame-hdr` to ld, with the exception
that `gcc -static` does not pass `--eh-frame-hdr`. The difference is a
historical choice related to `__register_frame_info`. We can behavle
like Clang and always pass `--eh-frame-hdr`.
Remove a `-L` that does not specify a directory.
2025-02-06 22:57:49 +01:00
Christoffer Lerno
e3851f3723
return (any)&foo would not be reported as an escaping variable if foo was a pointer or slice.
2025-02-06 16:33:42 +01:00
Christoffer Lerno
6fcda240b8
Fixes to enum conversions.
2025-02-04 22:26:51 +01:00
Christoffer Lerno
fff3cf33c7
Issue where inlined expr enums weren't properly const folded.
2025-02-04 21:46:23 +01:00
Christoffer Lerno
a862437bac
Rephrased the text.
2025-02-04 11:27:44 +01:00
Christoffer Lerno
7a6df10b39
Update error message on casting between distinct types.
2025-02-04 11:24:08 +01:00