cppfront
cppfront copied to clipboard
A personal experimental C++ Syntax 2 -> Syntax 1 compiler
**Describe the bug** If `as` is to be a uniform cast syntax, then I would expect to be able to get raw values from enums with it, but that is...
Resolves #558. **[T](#est)esting summary**: ```ctest 100% tests passed, 0 tests failed out of 818 Total Test time (real) = 50.70 sec ``` **[A](#ack)cknowledgements**: - Tested thanks to . - Commit...
Resolves #679. **[T](#est)esting summary**: ```ctest 100% tests passed, 0 tests failed out of 818 Total Test time (real) = 48.87 sec ``` **[A](#ack)cknowledgements**: - Tested thanks to . - Commit...
**[T](#title)itle**: Type of `this` can't be a nested type. **[D](#desc)escription**: It's common to alias complicated base types. Cpp2's member declaration order suggests a nested type could be used for a...
**Describe the bug** Cppfront in -p mode doesn't check included .h2 for pureness **To Reproduce** Evil example 1. Sample code - distilled down to minimal essentials please m.cpp2 ``` #include...
**[T](#title)itle**: Can't author trivial functions. **[D](#desc)escription**: Currently, Cppfront generates special member functions even when a `=default`ed one would do. When a Cpp2 `operator=` for a move/copy constructor/assignment or destructor would...
**[T](#title)itle**: Unbraced function expression template argument not parsed. **[M](#rep)inimal reproducer** (): ```Cpp2 u: type == std::in_place_t; t: @struct type = { this: u; } main: () = { } ```...
**[T](#title)itle**: Can't use CTAD for type-scope object alias. **[M](#rep)inimal reproducer** (): ```Cpp2 #include arr0: std::array == :std::array = (0);; // OK. t: @struct type = { arr1: std::array == :std::array...
**Suggestion** As presented at CppCon 23, cppfront could transform integer arithmetic operations so that they trap/terminate on overflow, underflow or carry. This is a similar solution to my #220 suggestion....
Resolves #525. Resolves #502. Resolves #343. Resolves #711. Resolves #718. Partially addresses #387 ([_parameter-declaration-list_](https://github.com/hsutter/cppfront/issues/387#parameter-declaration-list)). **[T](#est)esting summary**: ```ctest 100% tests passed, 0 tests failed out of 776 Total Test time (real)...