54 Commits (master)

Author SHA1 Message Date
Danila Fedorin d153af5212 Get rid of more constructors and make mangled names optional. 1 year ago
Danila Fedorin a336b27b6c Remove unneeded explicit calls to std::string 1 year ago
Danila Fedorin 97eb4b6e3e Fix silent error in set_mangled_name 1 year ago
Danila Fedorin 5db864881a Fix use of wrong environment for name mangling. 1 year ago
Danila Fedorin 7226d66f67 Remove the parent method from type_env. 1 year ago
Danila Fedorin 8a352ed3ea Roll back optimization changes. 1 year ago
Danila Fedorin 02f8306c7b Use an instruction instead of a special-case boolean instruction. 1 year ago
Danila Fedorin cf6f353f20 Change tagging to assume sign extension. 1 year ago
Danila Fedorin 7a631b3557 Make a few more things classes. 1 year ago
Danila Fedorin 5e13047846 Make global scope a class. 1 year ago
Danila Fedorin c17d532802 Make type_mgr a class. 1 year ago
Danila Fedorin 55e4e61906 Make mangler a class and reformat graph. 1 year ago
Danila Fedorin f2f88ab9ca Make env a class. 1 year ago
Danila Fedorin ba418d357f Make type_env a class. 1 year ago
Danila Fedorin 0e3f16139d Make llvm_context a class. 1 year ago
Danila Fedorin 55486d511f Make some refactors for name mangling and encapsulation. 1 year ago
Danila Fedorin 6080094c41 Require mangled names for global variables. 1 year ago
Danila Fedorin 6b8d3b0f8a Refactor errors and update post draft. 1 year ago
Danila Fedorin 725958137a Factor type into case strategy constructor. 1 year ago
Danila Fedorin fe1e0a6de0 Switch to using FILE* and default YY_INPUT. 1 year ago
Danila Fedorin 1f3c42fc44 Change constructor visibility to global. 1 year ago
Danila Fedorin 13214cee96 Try out unboxing integers. 1 year ago
Danila Fedorin 579c7bad92 Enable more syntax. 1 year ago
Danila Fedorin f00a6a7783 Actually use the environment for binop functions. 1 year ago
Danila Fedorin 2a81fdd9fb Stop using mangled names for local variables. 1 year ago
Danila Fedorin 17c59e595c Add assertion regarding local name mangling. 1 year ago
Danila Fedorin ad2576eae2 Move common code into loops. 1 year ago
Danila Fedorin 72d8179cc5 Add compile-time flag to disable output. 1 year ago
Danila Fedorin dbabec0db6 Tweak parsed type error warning. 1 year ago
Danila Fedorin 76675fbc9b Make make_case_for throw from the second time on. 1 year ago
Danila Fedorin ca395b5c09 Add programs to trigger error cases. 1 year ago
Danila Fedorin 1a05d5ff7a Add type errors to identifier nodes. 1 year ago
Danila Fedorin 56f0dbd02f Prevent case compilation from crashing and burning. 1 year ago
Danila Fedorin 9fc0ff961d Add more built-in boolean-specific instructions. 1 year ago
Danila Fedorin 73441dc93b Register booleans as internal types. 1 year ago
Danila Fedorin df5f5eba1c Make sure to delete LLVM target machine. 1 year ago
Danila Fedorin d950b8dc90 Initialize graph indegree. 1 year ago
Danila Fedorin 85394b185d Add prototype impl of case specialization. 1 year ago
Danila Fedorin 86b49f9cc3 Add 'internal' types. 1 year ago
Danila Fedorin 9769b3e396 Replace throw 0 with real exceptions or assertions. 1 year ago
Danila Fedorin e337992410 Add sources for unification type errors. 1 year ago
Danila Fedorin d5c3a44041 Add extra line after code fence. 1 year ago
Danila Fedorin eade42be49 Print locations in non-unification type errors. 1 year ago
Danila Fedorin d0fac50cfd Add locations to patterns. 1 year ago
Danila Fedorin dd4aa6fb9d Require C++17 for optionals 1 year ago
Danila Fedorin aa867b2e5f Add locations to error reporting. 1 year ago
Danila Fedorin 2fa2be4b9e Add a method to print location. 1 year ago
Danila Fedorin d5536467f6 Touch up source index code. 1 year ago
Danila Fedorin 67cb61c93f Keep track of locations in definitions. 1 year ago
Danila Fedorin 578d580683 Make driver keep track of line numbers and locations. 1 year ago