44 Commits

Author SHA1 Message Date
ed 84f4fc5ae9 lexer/parser revamp progress: got c11 ver compiling (synchup before continuation) 2025-03-19 12:09:07 -04:00
ed 1c7dd4ab32 WIP Broken: Working towards major changes to lexer
Lexer tokens now tracked using TokenSlice. ParserContext as the id for current token during traversal.
Last progress on errors needs updates to interface.parsing.cpp
Not adding message support yet as that will need to revamped with the logging, right now just focused on getting both lexer on parser to use proper info data structures.
Thinking of separating ParseContext from the general lib Context, plan is to just have the parser context have its allocator and other references it needs.
So there will seem to be redundant parameter passing to some procedures for now.
The big endgoal of this other than the parser's compression is the ability to support mult-threading.
Immediate concern other than making sure everything necessary is only within ParseContext, etc is things related to logging, or otherwise that is not thread dependent.
Those can get guarded but I don't have full intuition on what will have that (most likely the library's provided allocator/s as well will need guards introduced).
I'll concern myself more with charting those out once things are at least lifted properly. Worst case a trivial situation can be achived by the user by just abusing multiple contextes/allocators/etc as we already have in place.
2025-03-18 03:26:14 -04:00
ed 790087aa3c progress on modularizing parser paths 2025-03-16 23:13:46 -04:00
ed 26623075ad started to work on modularizing parser code paths 2025-02-19 12:10:11 -05:00
ed 7ea90ef349 intellisense still broken... 2025-02-19 11:22:00 -05:00
ed 6d531fdf97 Fixing intellisense 2025-02-19 11:08:24 -05:00
ed 844d431e1c Setup Context's logger and fallback. (Not yet used in implementation). 2025-02-19 10:50:36 -05:00
ed ef72d27f3e made optionals for c11 actually work... 2025-02-11 19:24:42 -05:00
ed 75b1d42cca changes based off of metadesk genc_c11 2025-02-11 18:59:09 -05:00
ed dda70fce36 can't use static globals on static libs 2025-02-04 21:23:51 -05:00
ed 3bce2e9b8a rename GEN_INTELLISENSE_DIRECTIVES -> INTELLISENSE_DIRECTIVES 2025-02-04 18:33:07 -05:00
ed 5c17983a73 move more strbuilder functions to cpp 2025-02-04 14:53:26 -05:00
ed b6d95e8d70 move strbuilder_make_space_for to strings.cpp (not inlined) 2025-02-04 14:17:15 -05:00
ed 1f958e121c more adjustments based on odin binding drafting 2025-02-04 01:57:23 -05:00
ed e457191f5d moved seiralization inlines to inlines.hpp, more adjustments 2025-02-03 18:53:35 -05:00
ed bdd9c9bcdf Fixes for building all library types 2025-01-30 13:57:42 -05:00
ed eca538c6af Fixes for GEN_API symbol exports necessary for dynamic linking 2025-01-29 02:04:50 -05:00
ed ce2be411d7 Add support for non Specifier enum SuffixSpecs in AST_Fn and parsing (Thanks Unreal) 2025-01-29 01:29:55 -05:00
ed 16fc3fa379 Separate ifndef for bitfield_is_set 2025-01-28 21:09:35 -05:00
ed 62b36ec8bb misc changes to clang format spacing 2025-01-28 14:49:19 -05:00
ed c90c210e04 fixes for c library 2024-12-15 22:53:32 -05:00
ed b027778328 last set of fixes for UE 2024-12-15 19:54:27 -05:00
ed 868b93cdd0 bugfixes while testing with unreal (still more needs fixing 2024-12-15 17:52:31 -05:00
ed 63bc3bebed add GEN_NS to txt macro 2024-12-15 11:23:04 -05:00
ed 4fe1a4da65 c_library compiles and generates 2024-12-15 01:27:57 -05:00
ed 956ab73130 Unreal variant generates, doing c_library corrections next 2024-12-14 23:10:23 -05:00
ed c8cf55403b WIP: more progress on new macro handling 2024-12-14 18:49:41 -05:00
ed 683f13deab fixes for array container based on testing in Unreal 2024-12-14 08:50:28 -05:00
ed e8bb381520 fixes 2024-12-14 07:14:45 -05:00
ed 967a044637 Got .lib and .dlls setup for the C11 library 2024-12-14 00:10:07 -05:00
ed b5cf633e98 Updated c_library generation to support latest changes with context struct (also prepped for static/dynamic linkage) 2024-12-13 22:09:43 -05:00
ed 16d0e0834f All global vars (except concepts) have been retrofitetd to the library's new Context struct 2024-12-13 20:40:18 -05:00
ed 76ac3a0f93 Introduced the general context struct for gencpp 2024-12-13 19:16:52 -05:00
ed 8d436fe546 correct formatting in singleheader.cpp 2024-12-13 15:42:13 -05:00
ed bac57a5872 Corrected enum serialization of ecodetypes, eoperator, especifier, and etoktype, some more naming refactors for strbuilder... formatting 2024-12-13 14:38:27 -05:00
ed 012fcb6bd5 Corrected order of Str to how the slice type is defined in Odin and RAD Debugger (my reference on slice types) 2024-12-13 13:20:16 -05:00
ed e3172057d3 working to towards https://github.com/Ed94/gencpp/issues/56 2024-12-12 12:55:15 -05:00
ed 30dea2e9fd reduce 'large macro' usage in ast.cpp and interface.cpp
Properly disabled GEN_DEBUG_TRAP in non-debug builds
2024-12-12 11:35:50 -05:00
ed 0e782cdf99 minor fixees 2024-12-11 14:57:38 -05:00
ed 65427bd0f1 Update undef.macros.h 2024-12-11 14:08:34 -05:00
ed 4dfb9031d7 separated _generic macros from base/dependencies/macro.shpp 2024-12-11 08:52:05 -05:00
ed 401f85f673 corrections to c_library.cpp, package_release.ps1 working for all zips 2024-12-11 02:04:22 -05:00
ed ef78772278 work on gettings things compiling again after restructuring 2024-12-10 20:45:00 -05:00
ed 2c51a2f9c8 WIP: Restructuring project 2024-12-10 16:13:14 -05:00