Commit Graph

3793 Commits

Author SHA1 Message Date
gingerBill 38b64dc5df Improve doc_writer.cpp performance 2023-05-22 20:48:13 +01:00
gingerBill 248f14a1ef Correct entity flag generation 2023-05-22 15:29:01 +01:00
gingerBill b76fc58543 Inline are_types_identical_unique_tuples to improve odin_doc_type performance 2023-05-22 15:23:24 +01:00
gingerBill 8bf32ac697 Minor change to handling of propagation of errors with --- as a value 2023-05-22 12:53:29 +01:00
gingerBill 540f724b1f Fix --- on variable declarations 2023-05-22 12:42:02 +01:00
gingerBill d5a8f2298e Restrict --- to variable declarations only 2023-05-22 12:37:26 +01:00
gingerBill 46bb9bc5c7 Enforce an icmp when casting to i1 to correct behaviour for booleans which are not 0 or 1 2023-05-20 12:41:30 +01:00
Jeroen van Rijn 1f4baba06e Merge pull request #2479 from Naught00/master
Change default executable extension for non-Windows platforms
2023-05-19 20:09:39 +02:00
Mark Naughton fa1ce7d5d1 Fix accidental check in 2023-05-19 18:56:35 +01:00
Mark Naughton 775a488a36 Fix windows write_directory() 2023-05-19 18:53:43 +01:00
Mark Naughton 018904f0ec Add write permissions check on output folder 2023-05-19 18:37:55 +01:00
gingerBill 4201834b18 Make intrinsics.type_merge form a union of the types; ignoring duplicates 2023-05-19 12:11:18 +01:00
gingerBill 2631e07bea Add intrinsics.type_merge 2023-05-19 11:18:20 +01:00
Mark Naughton 413077a5d9 Fix single-file package case 2023-05-18 13:23:17 +01:00
gingerBill 56c0d32ea0 Fix #2526 2023-05-18 11:52:16 +01:00
gingerBill c0e84b0592 Fix #2536 2023-05-18 11:39:18 +01:00
gingerBill f2e590be7a Fix #2544 2023-05-18 11:35:47 +01:00
gingerBill 1692dcf8d5 Merge pull request #2514 from ryuukk/patch-2
Missing cast
2023-05-18 11:26:02 +01:00
gingerBill 5ec4719124 Merge pull request #2523 from jcmoyer/fix-2056
Zero non-diagonal elements when converting to matrix
2023-05-18 11:25:44 +01:00
gingerBill 171f38b9b5 Allow implicit conversion between boolean types within or_return
This is to improve the experience using third-party code, especially foreign C-like code which may use a distinct boolean or a different sized one
2023-05-18 11:06:02 +01:00
gingerBill bb4ff84a4a Add extra mutex for error block stuff 2023-05-16 11:52:02 +01:00
gingerBill 8693a045bb Revert "Change intrinsics.read_cycle_counter on ARM64"
This reverts commit b567679eb6.
2023-05-12 11:50:49 +01:00
gingerBill b567679eb6 Change intrinsics.read_cycle_counter on ARM64 2023-05-12 11:34:01 +01:00
matias 277ae4e2b0 Patch "no_copy" typo in parser.cpp 2023-05-10 02:58:17 -04:00
J.C. Moyer ed580b3060 Zero non-diagonal elements when converting to matrix
Fixes #2056
2023-05-09 12:00:38 -04:00
ryuukk f313538ea5 Missing cast 2023-05-06 18:00:33 +02:00
gingerBill fda1e4409c When using -debug, default to -o:none unless explicitly specified 2023-05-02 14:44:56 +01:00
gingerBill b3aa6afba9 Fix #2481 2023-04-27 11:35:14 +01:00
gingerBill 7df1cc075c Fix #2487 2023-04-27 11:31:05 +01:00
gingerBill b0f0a02d3c Make !x be an untyped boolean 2023-04-27 11:26:15 +01: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 acd8a4bc95 Unify check_constant_parameter_value logic 2023-04-27 10:58:17 +01:00
Mark Naughton 4b4481ea27 Simplify extension addition logic 2023-04-26 16:39:47 +01:00
Mark Naughton e84802468b Use buildpath instead of init_filename 2023-04-26 15:48:59 +01:00
Mark Naughton 1a5ed4eb7f Fix .bin not being applied for relative directory 2023-04-26 14:10:22 +01:00
Mark Naughton 5151403aaa Fix Windows version of get_current_directory 2023-04-25 12:08:15 +01:00
Mark Naughton 67b6a8ee89 Add Windows equivalent of get_current_directory 2023-04-24 14:26:53 +01:00
Mark Naughton 780375d865 Add .bin extension in extra case 2023-04-24 12:57:59 +01:00
Mark Naughton cbcf94669e Add get_current_directory() 2023-04-24 12:57:34 +01:00
Mark Naughton 06e8d03fba Use last element for directory collision check 2023-04-23 21:15:08 +01:00
Mark Naughton a6b9341593 Add .bin extension the case of a collision
The directory name is used to determine the executable name. In the case
that the directory and output executable are in conflict, a .bin
extension is added.
2023-04-23 18:53:00 +01:00
Mark Naughton 47610725ea Change default executable extension
Putting a program into your path on a UNIX system with a
file extension means that you have to type the extension out for every
invocation of the program. A better default is to have no extension at
all since most people will end up removing it anyway.

This change does not affect Windows since the .exe extension is set
after the default extension if compiling on Windows.
2023-04-23 17:02:56 +01:00
gingerBill f2ec438166 Add ifdef block 2023-04-21 12:50:36 +01:00
gingerBill a95b064d6d Fix memory leak caused by awful realloc usage on Linux 2023-04-21 13:29:38 +01:00
gingerBill 9d23a392a6 Merge branch 'master' of https://github.com/odin-lang/Odin 2023-04-20 11:27:14 +01:00
gingerBill 6726df4d58 Allow aliasing foreign import name 2023-04-20 11:20:15 +01:00
gingerBill 02a58c1247 Merge pull request #2464 from ap29600/simd_unaligned_load
Improve code generation for `intrinsics.unaligned_load/store` on `#simd` types
2023-04-20 10:33:32 +01:00
gingerBill 72a7b35513 Merge pull request #2450 from destroycomputers/master
Fix intrinsics.alloca code generation
2023-04-20 10:25:43 +01:00
gingerBill 843eaf8893 Fix race condition with -use-separate-modules due to type determination 2023-04-18 17:20:50 +01:00