| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Add `-did-you-mean-limit:N` | Jeroen van Rijn | 43 hours | 1 | -0/+3 |
| | | | | | | | | | | | | | | | | | | | | | | | | ``` -did-you-mean-limit:<integer> Sets the maximum number of suggestions the compiler provides. Must be an integer >0. If not set, the default limit is 10. ``` e.g. with a limit of 5 ``` W:/Scratch/main.odin(44:7) Error: Undeclared name 'B1' for type 'E' e = .B1 ^^ Suggestion: Did you mean? A23 A02 A19 A20 A21 ... and 25 more ... ``` | ||||
| * | Add `-show-import-graph` | gingerBill | 4 days | 1 | -0/+1 |
| | | |||||
| * | Merge pull request #6220 from laytan/fix-lto-macos | gingerBill | 13 days | 1 | -1/+26 |
| |\ | | | | | fix LTO on MacOS | ||||
| | * | fix LTO on MacOS | Laytan Laats | 13 days | 1 | -1/+26 |
| | | | | | | | | | | | | | | | | | | | | | If no `-minimum-os-version` is given, ignore the `override-module` warnings. The user not using, `-minimum-os-version` opts you into linker warnings about target versions. If a `-minimum-os-version` is provided, normalize it to a full version `11` to `11.0.0` for example. The linker seems to want that when doing LTO. | ||||
| * | | support -> supported | Jeroen van Rijn | 13 days | 1 | -1/+1 |
| |/ | |||||
| * | Add ThinLTO support via -lto:thin and -lto:thin-files flags | Jesse Meyer | 14 days | 1 | -0/+30 |
| | | | | | | | | | | | | - Add -lto:thin and -lto:thin-files CLI flags with validation - Emit LLVM bitcode (.bc) instead of object files when LTO is enabled - Pass -flto=thin and -flto-jobs to clang/lld linkers - Guard linkage corrections to skip declarations without definitions (required for LTO where declarations appear across modules) - Allow module-per-file with LTO even at higher optimization levels Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> | ||||
| * | Merge branch 'master' into bill/feature-using-stmt | gingerBill | 2026-01-30 | 1 | -3/+16 |
| |\ | |||||
| | * | Add `#+feature force-type-assert` which overrides `-no-type-assert` on a ↵ | gingerBill | 2026-01-26 | 1 | -1/+7 |
| | | | | | | | | | per-file basis | ||||
| | * | Added target freestanding_amd64_mingw for building freestanding on windows ↵ | Karl Zylinski | 2026-01-20 | 1 | -0/+10 |
| | | | | | | | | | without MSVC installed (use for example clang-mingw) | ||||
| | * | `-disable-unwind` | gingerBill | 2026-01-15 | 1 | -0/+1 |
| | | | |||||
| * | | Make `using` as a statement an opt-in with `#+feature using-stmt` | gingerBill | 2025-12-21 | 1 | -0/+5 |
| |/ | |||||
| * | Change target triple of `freestanding_amd64_win64` to ↵ | gingerBill | 2025-12-17 | 1 | -1/+1 |
| | | | | | `x86_64-pc-windows-msvc` to fix a bug with LLVM's code generation | ||||
| * | Make Karl Zylinski happy | Jeroen van Rijn | 2025-10-27 | 1 | -0/+1 |
| | | |||||
| * | Merge pull request #5797 from harold-b/hb.export-linked-libs | gingerBill | 2025-10-12 | 1 | -0/+2 |
| |\ | | | | | Add build flag to export the linked libraries | ||||
| | * | Add `-export-linked-libs-file` build flag. | Harold Brenes | 2025-10-12 | 1 | -0/+2 |
| | | | | | | | | | This build flag writes a list of the libraries that were linked during the build to the specified file. | ||||
| * | | Check for `+` and `-` in the target features set | Yhya Ibrahim | 2025-10-11 | 1 | -0/+12 |
| |/ | |||||
| * | Rename to `-build-diagnostics` | gingerBill | 2025-09-29 | 1 | -1/+1 |
| | | |||||
| * | Add `-para-poly-diagnostics` | gingerBill | 2025-09-29 | 1 | -0/+2 |
| | | |||||
| * | Remove `_test.odin` filter | gingerBill | 2025-09-27 | 1 | -8/+0 |
| | | |||||
| * | Support `-linker:mold` | gingerBill | 2025-09-19 | 1 | -0/+2 |
| | | |||||
| * | More improvements to minimize code gen size | gingerBill | 2025-09-18 | 1 | -0/+1 |
| | | |||||
| * | Try moving parapoly procs into a separate module when doing weak ↵ | gingerBill | 2025-09-18 | 1 | -0/+1 |
| | | | | | monomorphization | ||||
| * | Multithread "check all scope usages" | gingerBill | 2025-09-10 | 1 | -1/+1 |
| | | |||||
| * | Minimize more thread contention | gingerBill | 2025-09-10 | 1 | -1/+1 |
| | | |||||
| * | Minor clean up of permanent/temporary arena usage | gingerBill | 2025-09-10 | 1 | -5/+5 |
| | | |||||
| * | Add `-integer-division-by-zero:all-bits` | gingerBill | 2025-08-10 | 1 | -5/+14 |
| | | |||||
| * | Add `#+feature global-context` | gingerBill | 2025-08-10 | 1 | -0/+7 |
| | | | | | This allows to use of `context` in the global scope on a per file basis. | ||||
| * | Add `-integer-division-by-zero:self` | gingerBill | 2025-08-08 | 1 | -1/+6 |
| | | |||||
| * | Add `#+feature integer-division-by-zero:<string>` | gingerBill | 2025-08-08 | 1 | -0/+12 |
| | | |||||
| * | Define the behaviour of integer division by zero | gingerBill | 2025-08-08 | 1 | -0/+7 |
| | | |||||
| * | Add `string16` and `cstring16` (UTF-16 based strings) | gingerBill | 2025-08-02 | 1 | -4/+4 |
| | | |||||
| * | fix flag | Laytan | 2025-07-29 | 1 | -1/+1 |
| | | |||||
| * | saner stack linker flags for WASM | Laytan | 2025-07-29 | 1 | -0/+7 |
| | | | | | Supersedes #5425 | ||||
| * | Merge pull request #5081 from Lperlind/vet-explicit-allocators | gingerBill | 2025-07-22 | 1 | -0/+3 |
| |\ | | | | | Add -vet-explicit-allocators | ||||
| | * | Add -vet-explicit-allocators | Lucas Perlind | 2025-04-27 | 1 | -0/+3 |
| | | | | | | | | | | | | | | | | | | | | | | | | | This vet flag will make it so that allocators must be explicitly used in places where context.allocator and context.temp_allocator are a procedure parameter. The goal of this flag is to prevent using the context.allocator in cases where a different allocator was meant to be used. Some code bases default context.allocator to nil/panic allocator to catch this at runtime. This effectively makes it a compile time error instead. | ||||
| * | | Check for invalid subtargets. | Harold Brenes | 2025-07-20 | 1 | -11/+20 |
| | | | | | | | | | | | | | | | | | - Add 'ios' pseudo-subtarget which triggets with either iPhone or iPhoneSimulator subtargets. - Treat an explicit 'default' subtarget as exclusive only to the default subtarget, not an other platform-compatible subtargets. - 'generic' continues to resolve to true for any platform-compatible subtarget as it names appears to imply such behavior. | ||||
| * | | Missing rename in panic string | Harold Brenes | 2025-07-14 | 1 | -1/+1 |
| | | | |||||
| * | | Rename `iOS` subtarget to `iPhone` for consistency. | Harold Brenes | 2025-07-14 | 1 | -5/+5 |
| | | | | | | | | | | | Add `ODIN_PLATFORM_SUBTARGET_IOS` builtin constant which evaluated to `true` when the platform is `Darwin` and the subtarget it either `iPhone` or `iPhoneSimulator` | ||||
| * | | Fix correct versioned target triplet for iphonesimulator subtarget | Harold Brenes | 2025-07-14 | 1 | -1/+10 |
| | | | | | | | | | - Always set the `-m*-version-min` linker flag for non-macOS Darwin subtargets | ||||
| * | | Provide default minimum version for iOS and apply its target triplet. | Harold Brenes | 2025-07-14 | 1 | -4/+8 |
| | | | | | | | | | - Fix incorrect clang_path override for iOS during link stage. | ||||
| * | | Updated iOS/iPhoneSimulator build support | Harold Brenes | 2025-07-13 | 1 | -10/+25 |
| | | | |||||
| * | | [source-code-locations] - added options to show, obfuscate, and hide source ↵ | Hayden Gray | 2025-06-26 | 1 | -1/+8 |
| | | | | | | | | | code locations (#5412) | ||||
| * | | Typo fix | Jeroen van Rijn | 2025-06-01 | 1 | -1/+1 |
| | | | |||||
| * | | Also clean up .dSym on Darwin | Jeroen van Rijn | 2025-06-01 | 1 | -10/+18 |
| | | | |||||
| * | | Allow overriding object extension in `-build-mode:obj` | Feoramund | 2025-05-30 | 1 | -7/+35 |
| | | | |||||
| * | | Remove trailing whitespace | Feoramund | 2025-05-30 | 1 | -1/+1 |
| | | | |||||
| * | | Always provide /PDB option to linker if generating debug info. | Jeroen van Rijn | 2025-05-29 | 1 | -4/+12 |
| | | | | | | | | | | | | | | | radlink by default places the .PDB file in the working directory, even if /OUT says to place it elsewhere, unlike link.exe, which places it next to the executable by default. So, if compiling using -debug, we generate a PDB path even if -pdb-name wasn't used to override it. | ||||
| * | | Add comments to `builtin.odin`, documenting ODIN_* constants. (#5218) | Jeroen van Rijn | 2025-05-26 | 1 | -67/+68 |
| | | | | | | | And document constants not previously listed. | ||||
| * | | Rename -keep-test-executable to -keep-executable | Jeroen van Rijn | 2025-05-23 | 1 | -1/+1 |
| | | | |||||
| * | | Tweak #5202 | Jeroen van Rijn | 2025-05-23 | 1 | -1/+0 |
| | | | | | | | | | Back out the new `-build-only` for tests in favor of the more established `-build-mode:test`, but retain the new `-keep-test-executable` option and default cleanup of test executables. | ||||