aboutsummaryrefslogtreecommitdiff
path: root/src/string.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Fix string16 bugs in Mac and LinuxCJ2026-01-241-13/+94
|
* fix: fix segfault on string_to_string16xenobas2025-09-161-10/+15
|
* Fix string16 literal length set in LLVMgingerBill2025-08-021-2/+0
|
* Begin supporting `string16` across the core librarygingerBill2025-08-021-0/+7
|
* Add `string16` and `cstring16` (UTF-16 based strings)gingerBill2025-08-021-17/+155
|
* Support subtargets in build tags: `#build darwin:generic` and `#build ↵gingerBill2025-04-101-0/+77
| | | | linux:android, darwin:ios`
* Improve bodge for android execute buildgingerBill2025-03-261-0/+9
|
* Fix #4530gingerBill2024-12-021-5/+5
|
* Merge pull request #4437 from dpoetzschke/fix/windows-args-escapinggingerBill2024-11-061-0/+30
|\ | | | | fix windows args parser problem from issue #4393
| * added bracesDominik Pötzschke2024-10-311-2/+4
| |
| * adjust memory allocationDominik Pötzschke2024-10-301-1/+6
| |
| * fix: fix windows params bugDominik Pötzschke2024-10-301-0/+23
| |
* | Fix passing nullptr to args marked as non-nullbobsayshilol2024-10-271-0/+1
|/ | | | | | | | | | | | | | | | | | | libstdc++'s |memcpy| and |memset| both state that their inputs should never be a nullptr since this matches the C spec. Some compilers act on these hints, so we shouldn't unconditionally call these as it would signal to the compiler that they can't be nullptrs. As an example, the following code will always call |do_something()| when compiled with optimisations since GCC version 4.9: ``` void clear(void *ptr, int size) { memset(ptr, 0, size); } void example(void *ptr, int size) { clear(ptr, size); if (ptr != nullptr) do_something(); } ```
* Merge pull request #3896 from odin-lang/cached-buildsgingerBill2024-07-091-0/+7
|\ | | | | Internal Cached Builds
| * Add `-internal-cached`gingerBill2024-07-081-0/+7
| |
* | implement `temporary_directory` on non-windowsLaytan Laats2024-07-081-4/+16
|/
* Use a temporary directory for -use-separate-modulesgingerBill2024-07-081-16/+38
| | | | Windows only currently
* Merge pull request #3369 from joakin/fix-dynamic-library-from-vendor-on-linuxgingerBill2024-05-031-0/+19
|\ | | | | Fix vendor dynamic libraries not working on Linux
| * Recognize dynamic library names like libraylib.so.5.0.0joakin2024-04-191-0/+19
| |
* | normalize_pathThomas la Cour2024-04-201-6/+28
|/
* Print to string buffer before printing errorsgingerBill2024-04-161-0/+37
|
* Add template specialization for compared against `""` with `String` internallygingerBill2024-04-151-0/+3
|
* Serialize errors to make them sortable, deterministic, and generally more ↵gingerBill2024-03-191-1/+0
| | | | control
* Add list of C identifier suggestions (types and keywords)gingerBill2024-03-181-0/+3
|
* Add check to people trying to `foreign import` C files.gingerBill2024-03-181-0/+7
|
* Add `#load_directory(path: string) > []runtime.Load_Directory_File`gingerBill2024-02-091-0/+12
|
* Merge pull request #2944 from Kelimion/microarch-helpJeroen van Rijn2023-11-221-0/+24
|\ | | | | Add -microarch:?
| * Add -microarch:?Jeroen van Rijn2023-11-101-0/+24
| |
* | Fix `string_extension_position`Jeroen van Rijn2023-11-211-1/+1
|/
* Minor fix to `string_compare`gingerBill2023-01-181-1/+1
|
* Improve `odin doc` string printing (Fixes #2246)gingerBill2023-01-181-34/+15
|
* Remove the synchronization primitive init/destroy callsgingerBill2023-01-011-5/+0
|
* Remove dead code in the compilergingerBill2022-12-181-14/+0
|
* `gb_internal` a lotgingerBill2022-12-181-62/+62
|
* find windows sdk bin path for rc.exeIan Lilley2022-08-071-0/+10
|
* `@(require_target_feature=<string>)` `@(enable_target_feature=<string>)`gingerBill2022-05-301-0/+9
| | | | | require_target_feature - required by the target micro-architecture enable_target_feature - will be enabled for the specified procedure only
* Address edge cases.Jeroen van Rijn2022-04-261-35/+0
|
* Compiler: Add early error for output path being a directory.Jeroen van Rijn2022-04-241-4/+6
| | | | | | | | | | | | - Introduce new `Path` type and an array of build paths on the build context. - Resolve input and output paths/files early (before parsing). - Error early if inputs are missing or outputs are directories. - Plumb new file path generation into linker stage instead of its adhoc method. TODO: - Remove more adhoc file path generation in parser and linker stage. - Make intermediate object file generation use new path system. - Round out and robustify Path helper functions.
* `-target-features:<string>`gingerBill2022-02-281-8/+0
| | | | This just passes a string directly to the LLVM features string
* Add more objc attributesgingerBill2022-02-111-0/+31
|
* Add `//+private file` to complement `//+private` (`//+private package`)gingerBill2022-02-021-2/+10
|
* Add `wasi_wasm32`gingerBill2021-10-311-3/+4
|
* Change the implementation of `Arena` to use virtual memory, and remove the ↵gingerBill2021-08-261-5/+0
| | | | old gbArena code
* Remove unused codegingerBill2021-08-191-2/+0
|
* Begin optimizing tokenizer; Replace `gb_utf8_decode` with `utf8_decode` (CC ↵gingerBill2021-08-011-3/+3
| | | | but easier to change later)
* Define which mutexes are blocking and recursive explicitlygingerBill2021-07-271-4/+4
|
* Add "Suggestion: Did you mean?" for selector expression typosgingerBill2021-07-081-38/+0
|
* Prefix named types with package name in debug typesgingerBill2021-03-231-0/+9
|
* Fix string_comparegingerBill2020-11-171-0/+1
|
* Add `-microarch:<string>` (e.g. `-microarch:native`)gingerBill2020-10-201-0/+6
|