Commit Graph

677 Commits

Author SHA1 Message Date
gingerBill
a8909f06ae Improve parsing for bit_field 2024-02-22 20:10:38 +00:00
gingerBill
54515af8cc Add field tags to bit_field 2024-02-22 19:41:48 +00:00
gingerBill
8060e3170e Remove debug message 2024-02-22 18:53:02 +00:00
gingerBill
980947b355 Give a better error message when the user uses context as if it was an identifier in a field list. 2024-02-22 18:52:17 +00:00
gingerBill
a4b8c1ea17 Begin work adding bit_field 2024-02-22 15:55:54 +00:00
gingerBill
7b672ac72a Disallow mixture of polymorphic $ names and normal identifiers within record parameters 2024-02-08 14:03:03 +00:00
gingerBill
a08250ac5b Improve error handling for missing library collection provided by the compiler 2024-02-07 17:15:59 +00:00
FourteenBrush
0e5d7801dd Fix code style 2024-02-02 21:17:10 +01:00
FourteenBrush
d463adfe4f Merge remote-tracking branch 'upstream/master' 2024-02-02 21:01:52 +01:00
FourteenBrush
16bd19ed43 Fix Unhandled Ast_OrBranchExpr 2024-02-02 21:00:00 +01:00
gingerBill
395e0fb225 -default-to-panic-allocator 2024-01-28 22:09:20 +00:00
gingerBill
09fa1c29cd Move core:runtime to base:runtime; keep alias around 2024-01-28 21:05:53 +00:00
gingerBill
68df35b378 Add #field_align(N)
It sets the minimum alignment for the fields within a struct. This cannot be used with `#packed`, but can be used with `#align(N)`.
If `#align(N)` is less than `#field_align(N)`, then a warning will be printed.
2024-01-28 17:33:29 +00:00
gingerBill
aff8f06e3c Add frontend stuff instrumentation tooling
//+no-instrumentation
@(no_instrumentation)
@(instrumentation_enter)
@(instrumentation_exit)
2024-01-07 19:56:00 +00:00
gingerBill
648b83d6ea Add or_break and or_continue constructs 2023-09-30 15:04:17 +01:00
gingerBill
3fae38a2f8 Correct get_file_line_as_string to fix #2829 2023-09-29 12:17:15 +01:00
gingerBill
fb935541c9 Fix #2809 - disallow files to start with _ 2023-09-26 13:10:18 +01:00
gingerBill
9711dd1381 Fix #2816 2023-09-26 12:41:33 +01:00
gingerBill
9911b132d2 Fix #2818 (enforce #partial label: switch) 2023-09-26 12:35:24 +01:00
gingerBill
1cdb975c91 Add attribute @(require) import "foo" to replace/supplement _ :: foo 2023-08-22 12:05:25 +01:00
gingerBill
9ff9587b7b Remove unused code in gb.h; Minimize use of heap_allocator() in parser 2023-08-16 00:41:49 +01:00
gingerBill
2cc22d118d Require parentheses for #align(N) 2023-08-15 14:55:02 +01:00
gingerBill
2b3f3e11d3 Make trailing commas followed by a closing token on the same an error with -vet-style 2023-08-08 16:01:08 +01:00
gingerBill
2181e0fc27 Make for init; ; {} an error without an explicit cond or post 2023-08-08 15:07:00 +01:00
gingerBill
cd74cdfdaf Remove switch in in favour of switch _ in 2023-08-08 14:57:25 +01:00
gingerBill
49ab935ae9 Disallow for in in favour of for _ in 2023-08-08 14:56:12 +01:00
gingerBill
c91898a888 Remove #relative slices; Replace with #relative multi-pointers 2023-08-05 16:05:39 +01:00
gingerBill
3323d5c76c Disallow import declarations within a when statement 2023-08-04 15:45:25 +01:00
gingerBill
65206fe33e Go through loads of TODOs 2023-08-01 11:39:04 +01:00
gingerBill
2f094134a3 Remove -strict-style-init-only 2023-08-01 11:14:52 +01:00
gingerBill
c35c58b023 Add -vet-style and -vet-semicolon 2023-08-01 11:03:15 +01:00
gingerBill
0de7df9eab Improve //+vet; remove using in many places; add //+vet !using-stmt where necessary 2023-07-31 11:37:14 +01:00
gingerBill
60e509b1e0 Add separate -vet flags; -vet-using-* flags; //+vet file flags 2023-07-31 11:09:19 +01:00
gingerBill
67ca9166d3 Allow named arguments variadic expansion .. 2023-06-21 01:03:21 +01:00
gingerBill
c66ac9725e Separate out logic for checking mixture of named and unnamed parameters 2023-06-14 14:56:33 +01:00
gingerBill
349641e95f Fix #2572 2023-06-07 13:08:15 +01:00
gingerBill
5376d32772 Parse leading comment above attribute for value declarations 2023-05-30 23:06:04 +01:00
gingerBill
97490c6445 Basic support for #reverse for in on normal arrays 2023-05-29 23:17:06 +01:00
gingerBill
d2f62730bc Fix #2560 2023-05-29 14:55:27 +01:00
gingerBill
8bf32ac697 Minor change to handling of propagation of errors with --- as a value 2023-05-22 12:53:29 +01:00
matias
277ae4e2b0 Patch "no_copy" typo in parser.cpp 2023-05-10 02:58:17 -04:00
gingerBill
d6d34bd62f Add extra nullptr check 2023-04-27 11:16:02 +01:00
gingerBill
68dde07d5d Require parentheses around certain uses of or_return expressions 2023-04-27 11:13:05 +01:00
gingerBill
5da76ae34b Add struct #no_copy 2023-04-15 15:37:32 +01:00
gingerBill
adcaace03c Fix allow_field_separator for foreign import 2023-04-03 21:09:26 +01:00
Alexander Goussas
99d6c58971 Fix typo in warning message in parser 2023-03-24 15:37:17 -05:00
gingerBill
b3e712e0b8 Correctly handle end comment for doc generation 2023-03-21 15:22:11 +00:00
gingerBill
ba02ef8f25 Change trailing comma require to -strict-style only 2023-03-21 13:16:03 +00:00
gingerBill
edb23db2ae Fix potential race condition when determining the package name 2023-01-16 18:31:40 +00:00
gingerBill
2dca39b557 Remove auto_cast procedure field flag
Fixes #2285
2023-01-16 12:06:03 +00:00