Commit Graph

5064 Commits

Author SHA1 Message Date
gingerBill
a25a9e6ebe Check for LLVM_VERSION_MAJOR >= 18 2024-09-09 14:47:44 +01:00
gingerBill
0dddd2b97e Add internal flag
`-internal-fast-isel`
2024-09-09 14:39:53 +01:00
Jeroen van Rijn
466a90010f Fix #4211 2024-09-07 21:07:29 +02:00
gingerBill
5a4746c3a0 Improve debug information for procedure types 2024-09-07 17:41:16 +01:00
gingerBill
0a08a65202 Simplify #row_major matrix and matrix_flatten behaviour 2024-09-07 12:21:29 +01:00
Laytan Laats
490f8c1568 add fixed point sign extend to 128 int deps 2024-09-05 15:55:55 +02:00
Laytan
578de09775 types with explicit custom alignment are identical to types with the same natural alignment 2024-09-04 18:48:11 +02:00
Laytan
dcf339517e make c vararg with any vs concrete type similar enough 2024-09-04 18:47:08 +02:00
Dimension4
b24157738f Add missing help text for -build-mode:test 2024-09-02 23:40:13 +02:00
gingerBill
16c5c69a40 Merge pull request #4175 from laytan/riscv-compiler
Support RISC-V for the compiler itself
2024-09-02 00:20:04 +01:00
Feoramund
9871ad5fc8 Remove extra format item at end of context error message 2024-09-01 17:50:50 -04:00
Laytan
28c643d23f riscv compiler support 2024-09-01 21:42:47 +02:00
Laytan
722b638e2c "fix" #4169, looks like llvm 14 bug 2024-08-31 19:40:05 +02:00
Jeroen van Rijn
c1cb1a3d7e Simplified #assert check 2024-08-31 19:13:37 +02:00
Jeroen van Rijn
a4ac50a5b4 Check for #assert condition to be a constant bool
Fixes #4170
2024-08-31 19:06:17 +02:00
gingerBill
b4bdb73158 Fix new(sync.Mutex) 2024-08-31 15:06:20 +01:00
gingerBill
476030dd28 Fix #4156 2024-08-31 13:51:35 +01:00
Laytan Laats
7f3d8e115f remove comma 2024-08-31 02:45:17 +02:00
Laytan Laats
7624ecf4ba fix some issues with the "bad import name" errors
There was so much wrong here:
- The `if` statement was never entered because even on invalid import
  names `path_to_entity_name` returns "_"
- Two errors were shown where one doesn't make sense, need to choose one
  based on context
- Structure of the messages were different from other error messages
- Suggestion was using the wrong import path
2024-08-31 02:30:32 +02:00
Jeroen van Rijn
3072a02d5d Attempt to account for BuildTools installer's lack of \ 2024-08-30 18:54:51 +02:00
gingerBill
a4e865f90b Fix #4166 2024-08-30 11:01:06 +01:00
gingerBill
9197a126fc Use XOR directly rather than (~x) & mask 2024-08-30 10:52:11 +01:00
gingerBill
38ea276231 Make ~some_bit_set work on only the possible bits by doing a mask with the full set 2024-08-30 10:48:21 +01:00
avanspector
3135c89a0a Merge branch 'master' of https://github.com/avanspector/Odin 2024-08-30 01:32:21 +02:00
avanspector
47f423c123 Set a flag for delayed checking 2024-08-30 01:32:06 +02:00
avanspector
a7a2611efc Merge branch 'odin-lang:master' into master 2024-08-29 23:44:14 +02:00
avanspector
9866c83d61 Add missing checker delaying 2024-08-29 23:43:01 +02:00
gingerBill
fb248056c9 Merge pull request #4146 from Feoramund/fix-i128-transmute-align
Fix inline transmutation of `[16]i8` to `i128`
2024-08-26 22:38:24 +01:00
avanspector
43ec2b9253 checker: delay foreign block checking
if file scope, otherwise as before
2024-08-26 20:59:16 +02:00
avanspector
d7e977069a Update checker.cpp 2024-08-26 19:59:15 +02:00
Feoramund
c424c94030 Fix inline transmutation of [16]i8 to i128
Forbids LLVM from generating SSE aligned loads on unaligned data.
2024-08-26 04:48:31 -04:00
Laytan
d299d4e1cd riscv: add an error when atomics are used without the atomics extension 2024-08-25 21:17:00 +02:00
gingerBill
8c952878fb Allow empty strings in link_prefix and link_suffix 2024-08-25 14:03:14 +01:00
gingerBill
aa659a637a Fix #4132 2024-08-24 15:46:54 +01:00
gingerBill
d0eaf7642d Add intrinsics.type_has_shared_fields 2024-08-24 14:36:18 +01:00
gingerBill
8ba87e01bd Improve parse_enforce_tabs usage 2024-08-24 13:56:30 +01:00
gingerBill
8b248673c1 Fix #4105 2024-08-24 13:36:43 +01:00
gingerBill
b6d9a0c32e Manually implement tail-recursion for parse_if_stmt 2024-08-24 13:16:55 +01:00
gingerBill
a4cc207022 Add a recursion depth limit for #3987 with a consideration to use a switch statement or refactor the code to not use a large if-else chain 2024-08-24 12:59:17 +01:00
gingerBill
683dde1fa0 Disallow labelled branches in defer - fix #3960 2024-08-24 12:47:29 +01:00
gingerBill
ca4d91a8a3 Fix #4079 2024-08-24 12:26:41 +01:00
gingerBill
65543b993f Merge pull request #4130 from fusion32/fix-ambiguous-generic-type-names
fix ambiguous generic type names
2024-08-24 11:50:02 +01:00
gingerBill
00fb60d3d9 #4115 Add Suggestion: 'typeid_of(T)' 2024-08-24 11:48:32 +01:00
gingerBill
68a83abcd6 #4119 Add error when doing {.A | .B} instead of {.A, .B} with a suggestion to do surround it in parentheses to make it clear it is intended 2024-08-24 11:44:59 +01:00
gingerBill
4458ca4585 Fix #4126 2024-08-24 11:40:02 +01:00
fusion32
5ef8a092f6 fix wrong exact value kind comparison 2024-08-23 17:50:27 -03:00
fusion32
c969bee86d fix ambiguous generic type names 2024-08-23 17:18:10 -03:00
gingerBill
70932dc478 Merge pull request #4089 from laytan/riscv64
add support for linux_riscv64 and freestanding_riscv64
2024-08-22 11:20:03 +01:00
Jeroen van Rijn
a8bc6f08a9 Merge pull request #4116 from Kelimion/article
Add table-driven (in)definite article to some errors.
2024-08-21 18:51:43 +02:00
Jeroen van Rijn
07aedb0b89 , 2024-08-21 18:42:11 +02:00