gingerBill
|
c653e400db
|
Add extra error checking in parser.cpp
|
2021-01-15 16:15:03 +00:00 |
|
gingerBill
|
f64584b92a
|
Improve -insert-semicolon rules
|
2020-12-09 23:40:45 +00:00 |
|
gingerBill
|
6f6a3f2ccf
|
Fix typos for -insert-semicolon
|
2020-12-09 23:35:08 +00:00 |
|
gingerBill
|
f0683c9102
|
Merge branch 'master' into parser-experiments
|
2020-12-06 00:49:48 +00:00 |
|
gingerBill
|
c4cb7170ee
|
Deprecate keyword opaque in favour of #opaque
|
2020-12-04 16:13:05 +00:00 |
|
gingerBill
|
b6bbe29c8f
|
Remove const as a (reserved) keyword
|
2020-12-04 16:04:58 +00:00 |
|
gingerBill
|
9408eb9580
|
Update odin doc to support multiple package outputs by passing multiple paths; Replace -all with -short
Example:
odin doc core/path core/path/filepath
|
2020-11-18 23:22:27 +00:00 |
|
gingerBill
|
34ca4e92eb
|
Fix parser logic for first comment group line in a file
|
2020-11-17 15:45:55 +00:00 |
|
gingerBill
|
d90fc18bef
|
Basic odin doc support
|
2020-11-17 15:05:16 +00:00 |
|
gingerBill
|
6f71d1f2a9
|
Add -show-unused (Shows unused package declarations of all imported packages)
Crude output at the moment but better than nothing
|
2020-11-17 12:10:25 +00:00 |
|
gingerBill
|
ca4b0527e8
|
Minimize memory usage for AST nodes by using Slice<T> rather than Array<T> when the parameter doesn't need to grow
|
2020-11-16 15:18:25 +00:00 |
|
gingerBill
|
939878df50
|
Improve logic for x->y() shorthand
|
2020-11-15 23:54:18 +00:00 |
|
gingerBill
|
3c1c10a178
|
Begin clarifying allocation patterns by changing from heap_allocator to specific arenas
|
2020-11-15 18:08:52 +00:00 |
|
gingerBill
|
31f4590f4b
|
Fix default parameters on record types
|
2020-11-09 13:04:36 +00:00 |
|
gingerBill
|
54fbdabc38
|
Add experimental -insert-semicolon functionality to tokenizer and parser
|
2020-11-01 15:10:06 +00:00 |
|
gingerBill
|
4629754f7c
|
Inline asm expression (-llvm-api)
See https://llvm.org/docs/LangRef.html#inline-assembler-expressions
Example:
```
x := asm(i32) -> i32 {
"bswap $0",
"=r,r",
}(123);
```
Allowed directives `#side_effect`, `#align_stack`, `#att`, `#intel` e.g. `asm() #side_effect #intel {...}`
|
2020-10-24 16:32:37 +01:00 |
|
gingerBill
|
b1bdd95f19
|
Begin work on making packages import assembly sort files (.S)
|
2020-10-16 15:32:09 +01:00 |
|
gingerBill
|
289908e0b8
|
Add +build ignore tag
|
2020-10-15 16:25:57 +01:00 |
|
gingerBill
|
ec5934705c
|
Enforce do bodies to be on the same line as the control statement's condition or token
|
2020-10-14 15:59:19 +01:00 |
|
gingerBill
|
654b24e514
|
Add -disallow-do
|
2020-09-23 17:17:32 +01:00 |
|
gingerBill
|
9d976b04bc
|
Fix +build tag logic
|
2020-09-15 12:45:44 +01:00 |
|
gingerBill
|
1fd1203d8b
|
Improve error message for multi-valued global declarations not be allowed
|
2020-09-12 16:04:02 +01:00 |
|
gingerBill
|
c1149dbdee
|
Update math and math/linalg; add "pure_none" calling convention
|
2020-09-10 15:00:19 +01:00 |
|
gingerBill
|
df3690c32a
|
Revert accidental removal of #const for procedure variable parameters #718
|
2020-08-26 22:46:54 +01:00 |
|
gingerBill
|
c18fc2da9f
|
Remove some dead code
|
2020-07-14 16:36:33 +01:00 |
|
gingerBill
|
15c4077806
|
Fix WASM foreign import names
|
2020-06-04 00:30:44 +01:00 |
|
gingerBill
|
1a0614b0d7
|
Improve performance of tokenization and parsing
|
2020-05-27 18:23:37 +01:00 |
|
gingerBill
|
6ac0fb80a6
|
Minor tokenizer performance improvements
|
2020-05-27 12:32:11 +01:00 |
|
gingerBill
|
4671207c61
|
Make the using import deprecation warning an error
|
2020-05-23 13:39:18 +01:00 |
|
gingerBill
|
aa029fe8d9
|
Add "pure" procedure types
|
2020-05-23 13:38:06 +01:00 |
|
gingerBill
|
7bd1039a49
|
Selector Call Expressions: x->y(123) == x.y(x, 123)
|
2020-05-22 14:54:30 +01:00 |
|
gingerBill
|
86b613fb15
|
Remove the need for type_of, size_of, align_of, offset_of to be keywords
|
2020-05-22 12:32:29 +01:00 |
|
gingerBill
|
ff92eb9112
|
Relative pointers
|
2020-05-15 17:37:00 +01:00 |
|
gingerBill
|
7c42d4ba75
|
(#594) Add #config to replace #defined; Restrict #defined within procedure bodies to remove race condition
|
2020-05-13 23:29:06 +01:00 |
|
gingerBill
|
97f7a558fa
|
#optional_ok tag for procedures
|
2020-04-19 21:45:04 +01:00 |
|
gingerBill
|
f09b6a4c90
|
Simplify compiler's Map and create a StringMap specifically for strings
|
2020-04-13 13:02:30 +01:00 |
|
gingerBill
|
29a3cb25d3
|
Add extra guards for window-only performance checking
|
2020-04-07 11:47:28 +01:00 |
|
gingerBill
|
d0b913dad1
|
Add extra internal memory analysis
|
2020-04-06 12:17:54 +01:00 |
|
gingerBill
|
e92fdb4a99
|
x if cond else y and x when cond else y expressions
|
2020-03-05 20:34:30 +00:00 |
|
gingerBill
|
3d74c2f6c0
|
Add proc(#const x: Type) to enforce a constant parameter (but not polymorphic) to a procedure
|
2020-02-26 22:53:40 +00:00 |
|
gingerBill
|
0f399a7294
|
Add union #maybe
|
2020-02-01 11:10:28 +00:00 |
|
gingerBill
|
159150c6d9
|
Allow not_in as keyword over notin, but still allow notin to work
|
2020-01-16 10:00:14 +00:00 |
|
gingerBill
|
5ec8dd166a
|
Add #partial tag for enumerated arrays to prevent common errors using non-contiguous enumerations
|
2019-12-27 16:55:32 +00:00 |
|
gingerBill
|
d1c9fd4e01
|
Implement #complete switch by default, replace with #partial switch #511
|
2019-12-22 12:03:48 +00:00 |
|
gingerBill
|
d462dbb5be
|
Deprecate using import
|
2019-12-21 12:11:16 +00:00 |
|
gingerBill
|
4ba579bc25
|
Also allow #no_bounds_check on an expression #499
|
2019-12-15 11:41:21 +00:00 |
|
gingerBill
|
58d4d424c6
|
Replace #vector[N]T with #simd[N]T to reduce confusion #498
|
2019-12-15 11:30:09 +00:00 |
|
gingerBill
|
7f5021c8e9
|
Disallow procedure calls with an associated deferred procedure to be used in logical binary expressions (short-circuiting)
|
2019-12-15 11:10:50 +00:00 |
|
gingerBill
|
9db81498d8
|
Make the string type elements "immutable", akin to char const * in C
Allows for extra security and optimization benefits
|
2019-12-01 14:10:59 +00:00 |
|
gingerBill
|
71c8a3456e
|
Update package odin/parser for #soa and #vector
|
2019-11-27 15:23:54 +00:00 |
|