cppfront
cppfront copied to clipboard
A personal experimental C++ Syntax 2 -> Syntax 1 compiler
Current implementation does not allows to write functions that explicitly return pointers (they can be deduced with using auto). ```cpp working: (inout i : int) -> auto = { return...
Current implementation is not handling deduced pointer types when analysing safety checks. It means that this code will pass safety checks ```cpp i : int = 42; pi := i&;...
Current implementation supports only pointer of the form ```cpp p: *int = ...; ``` This change extends that to allow multi-level pointers and make below code compilable ```cpp main: (argc...
I've not see the [deprecated](https://en.cppreference.com/w/cpp/language/attributes/deprecated) attribute used to much in APIs, but I have seen my share of programmers who are unknowingly using deprecated code, or at least knowingly being...
There's been a lot of work in C++20/C++23 around text handling, and formatting/printing in particular. From the goals laid out in the readme, the "feels like a new language" should...
In https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2021/p2392r0.pdf there is an example that uses lambda with `is` keyword. ```cpp cout std::string { is in(1,2) = "1 or 2"; is in(2,3) = "3"; is _ = "something...
Howdy, I checked out this repo and found a few relatively trivial issues in README. As such, I've resolved them, the most "important" is probably the first commit, as the...
Something I haven't seen addressed or talked about is how `cppfront` or the new cpp2 syntax will handle type casting. When I write code, I try to be very explicit...
The issue is that the last use detection of variables doesn't take into account loops. If the last use is detected inside a loop body it will apply `std::move()` and...
Current implementation of `inspect` and `is` allows to inspect types. https://github.com/hsutter/cppfront/pull/79 add inspection capabilities to check values of variables (what allows to replace cpp1 switches). This change introduce possibility to...