gingerBill
|
081a5a52a6
|
Add ODIN_ERROR_POS_STYLE environment variable
Allowing for two different error message styles:
default or odin
path(line:column) message
unix
path:line:column: message
|
2022-01-26 16:09:22 +00:00 |
|
gingerBill
|
6f3e450c50
|
Move error handling code to a separate file
|
2022-01-10 14:03:36 +00:00 |
|
gingerBill
|
5e2280a787
|
Fix set_file_path_string and thread_safe_set_ast_file_from_id
|
2021-11-24 16:20:01 +00:00 |
|
gingerBill
|
e814a3693f
|
Improve usage of file_id
|
2021-11-15 17:26:01 +00:00 |
|
gingerBill
|
1556fad65a
|
Change syntax for matrices to matrix[R, C]T
|
2021-10-19 11:31:11 +01:00 |
|
gingerBill
|
2ad6aa7886
|
Copying file contents rather than memory mapping
|
2021-10-12 11:06:39 +01:00 |
|
gingerBill
|
05ac2002e0
|
Force file copy on odin strip-semicolon
|
2021-09-18 12:52:43 +01:00 |
|
gingerBill
|
3713f11461
|
Refactor init_tokenizer_with_data to file memory mapping (Windows only currently)
|
2021-09-18 11:58:27 +01:00 |
|
gingerBill
|
042dbda47f
|
Replace many uses of heap_allocator() with permanent_allocator()
|
2021-09-13 01:30:30 +01:00 |
|
gingerBill
|
0434281f73
|
Strip semicolons; Make odin strip-semicolon replace .. with ..= if used as a binary operator
|
2021-09-06 20:15:59 +01:00 |
|
gingerBill
|
1fff96e088
|
Make -insert-semicolon the default now
|
2021-08-31 21:13:53 +01:00 |
|
gingerBill
|
b88e945268
|
ERROR_BLOCK() any usages of "Did you mean?" like behaviour whilst iterating across a scope entry map
|
2021-08-27 12:14:51 +01:00 |
|
gingerBill
|
da79124e5d
|
Use local mutex for each AstFile.arena
|
2021-08-26 23:10:15 +01:00 |
|
gingerBill
|
bd86993035
|
Remove the old inline and no_inline tokens
|
2021-08-23 12:37:42 +01:00 |
|
gingerBill
|
35026000bb
|
Fix deadlock caused by typo
|
2021-08-19 11:40:26 +01:00 |
|
gingerBill
|
b8661e0ae0
|
Update semi-colon insertion rules for or_return
|
2021-08-15 17:16:37 +01:00 |
|
gingerBill
|
21cbac755e
|
Make or_else and or_return operators (binary and suffix respectively)
|
2021-08-15 17:14:35 +01:00 |
|
gingerBill
|
799a56bbcb
|
Fix column in tokenizer (due to removed line)
|
2021-08-13 10:50:05 +01:00 |
|
gingerBill
|
5fd64f48ee
|
Minor procedure rename
|
2021-08-08 12:48:44 +01:00 |
|
gingerBill
|
a3b7126875
|
Simplify init_tokenizer_with_data
|
2021-08-08 12:47:45 +01:00 |
|
gingerBill
|
000bda8419
|
Reduce superfluous error messages for return statements expecting not-1 return values
|
2021-08-07 16:29:00 +01:00 |
|
gingerBill
|
545b345eea
|
Remove optimizations in tokenizer and default to older code (same logic) (optimize later)
|
2021-08-03 13:33:01 +01:00 |
|
gingerBill
|
b0e64ca7e8
|
Prepare tokenizer for optimizations
|
2021-08-02 16:47:32 +01:00 |
|
gingerBill
|
7f3d4cb504
|
Remove the literal conversion logic to the parser from the tokenizer
|
2021-08-02 00:53:45 +01:00 |
|
gingerBill
|
97be36d18a
|
Replace line with column_minus_one in Tokenizer; Remove dead code
|
2021-08-02 00:26:54 +01:00 |
|
gingerBill
|
be76da2c90
|
Begin optimizing tokenizer; Replace gb_utf8_decode with utf8_decode (CC but easier to change later)
|
2021-08-01 23:56:17 +01:00 |
|
gingerBill
|
b1a8357f50
|
Clean up a bit of the tokenizer code so that the semicolon insertion rules are in one place
|
2021-08-01 22:41:00 +01:00 |
|
gingerBill
|
700624119b
|
Give begin_error_block its own recursive mutex
|
2021-07-29 12:35:11 +01:00 |
|
gingerBill
|
a5d6fda433
|
Define which mutexes are blocking and recursive explicitly
|
2021-07-27 23:14:01 +01:00 |
|
gingerBill
|
a98eee145d
|
Remove try; Replace try x else y with or_else(x, y)
|
2021-07-05 16:23:13 +01:00 |
|
gingerBill
|
4b831dbddd
|
Try try and or_else built-in procedures with operators try and try else
|
2021-07-04 12:37:21 +01:00 |
|
gingerBill
|
11c565e199
|
Fix semicolon insertion rule for ---
|
2021-06-26 22:47:12 +01:00 |
|
gingerBill
|
9c54ed5792
|
Add range-based error messages to -verbose-errors
Example:
Cannot convert '(1 + 2)' to 'untyped bool' from 'untyped integer'
x := (1 + 2) * true;
^~~~~~^
|
2021-05-19 14:15:57 +01:00 |
|
gingerBill
|
5108ebf015
|
Replace error calls with Token to use TokenPos
|
2021-05-19 13:02:44 +01:00 |
|
gingerBill
|
86dbcb1b20
|
Add -verbose-errors which shows the error in the line of code
|
2021-05-19 12:57:30 +01:00 |
|
gingerBill
|
ce08e832f7
|
Allow ..= alongside .. as a "full range" operator; Update core:odin/parser etc
|
2021-05-16 12:34:35 +01:00 |
|
gingerBill
|
7886798156
|
Add space
|
2021-05-15 19:49:48 +01:00 |
|
gingerBill
|
0ad599675e
|
Improve semicolon insertion rule for dummy tokens ++ and --
|
2021-05-15 19:47:00 +01:00 |
|
gingerBill
|
5d03bc61b8
|
Tokenize ++ and -- as tokens but disallow them in the parser, and give better error messages for they are used as operators/statements
|
2021-05-15 19:34:46 +01:00 |
|
Gitea
|
011c8d5cda
|
fix Syntax Warning
|
2021-04-09 13:03:01 +03:00 |
|
gingerBill
|
54e6c50769
|
Implement f16 functionality
|
2021-04-01 10:06:00 +01:00 |
|
gingerBill
|
8cc4cba06c
|
Add support for backslash \ to consume a newline
|
2021-03-14 12:53:57 +00:00 |
|
gingerBill
|
15dbc99cb9
|
Minimize TokenPos size by using i32 for line/column/offset and file_id instead of String
To make `i32` safe, the parser limits the file size of odin files to a maximum of 2GiB (which will be good enough for the vast vast majority of cases)
|
2021-03-04 16:45:30 +00:00 |
|
gingerBill
|
28f279329d
|
Remove bit_field keyword and parsing logic
|
2021-02-23 15:29:54 +00:00 |
|
gingerBill
|
01313eec7f
|
Add flags -ignore-warnings and -warnings-as-errors
|
2021-02-23 14:59:28 +00:00 |
|
gingerBill
|
a652c24ac3
|
Remove opaque keyboard
|
2021-02-23 13:02:18 +00:00 |
|
gingerBill
|
53d8ec4d15
|
Add extra error checks
|
2021-01-18 11:34:09 +00:00 |
|
gingerBill
|
98c8fde098
|
Remove unused tokens
|
2020-12-06 13:17:48 +00:00 |
|
gingerBill
|
f0683c9102
|
Merge branch 'master' into parser-experiments
|
2020-12-06 00:49:48 +00:00 |
|
gingerBill
|
2a232f2397
|
Remove the (reserved) keyword macro
|
2020-12-04 16:14:11 +00:00 |
|