Commit Graph

5077 Commits

Author SHA1 Message Date
gingerBill
3166c7bef9 Add Suggested Example for using an inline procedure which enables a target feature 2024-09-12 10:07:09 +01:00
Laytan
275f1cc0de Merge pull request #4233 from laytan/fix-poly-variadic-reuse-slice
fix reuse of slice for varargs with poly types
2024-09-12 02:34:01 +02:00
Laytan Laats
387f56634d fix reuse of slice for varargs with poly types 2024-09-12 02:25:44 +02:00
Jeroen van Rijn
c94829f4d3 Merge pull request #4231 from InKryption/enable-doc-out-param
Enable -out:<filename> for doc subcommand
2024-09-12 01:43:22 +02:00
gingerBill
27ed10746d Allow transmute(Bit_Set)~T(0) 2024-09-11 23:08:38 +01:00
Laytan Laats
3b22c0854c fix some LLVM assertions 2024-09-11 22:45:16 +02:00
InKryption
1025b9e6c0 Enable -out:<filename> for doc subcommand
The logic for writing the .odin-doc file to the value assigned
to out_filepath already exists, this just enables it on the CLI
frontend.
2024-09-11 21:11:32 +02:00
gingerBill
9b06ea5bfd Fix #4229 for edge case os.Error/os.Errno legacy bodge 2024-09-11 12:01:01 +01:00
gingerBill
b442ea8601 Merge pull request #4206 from laytan/improve-linking-shared-libraries
Improve linking shared libraries
2024-09-10 21:59:21 +01:00
Jeroen van Rijn
564c7821c5 Allow ExactValue_Invalid in assert.
Fixes #4225
2024-09-10 15:19:12 +02:00
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 Laats
6778598bc6 support the rpath changes on macos 2024-09-05 00:12:16 +02:00
Laytan
0aa971207b add -no-rpath 2024-09-04 22:38:19 +02:00
Laytan
1a7c1d107a set -rpath to \$ORIGIN and expect libraries next to executable just like Windows 2024-09-04 22:19:46 +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