- Lexer
- Working Lexer
- Error Recovery
- Error Reporting
- Token Source Locations
- Tests
- Parser
- Working Parser
- Error Recovery
- Error Reporting
- Node Source Locations
- Tests
- Type-Checker
- Working Basic Structures
- Expressions
- Statements
- User-Defined Types
- Functions
- Methods
- Working Generics
- Monomorphisation
- Infinite Cycle Detection
- Error Recovery
- Error Reporting
- Tests
- Working Basic Structures
- Interpreter
- Working Interpreter
- Garbage Collection
- Tests
- C++ compiler with C++20 support
- CMake 3.27+
mkdir -p build # Create build directory
cd build
cmake .. # Configure CMake
cmake --build . # Build targets| Name | Description | Default value |
|---|---|---|
ALVO_TEST |
Build tests | ON |
ALVO_SANITIZE |
Enable sanitizers for main target | OFF |
ALVO_TEST_SANITIZE |
Enable sanitizers for test target | ON |
Options are passed on the stage of CMake configuration in the following format:
# Sets `ALVO_TEST` to `ON` and `ALVO_SANITIZE` to `OFF`
cmake -DALVO_TEST=ON -DALVO_SANITIZE=OFF ..