Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
69 commits
Select commit Hold shift + click to select a range
11778ca
ドキュメント修正
shadowlink0122 Nov 16, 2025
8e030f9
不要なファイルを削除
shadowlink0122 Nov 16, 2025
5120717
HIR実装
shadowlink0122 Nov 16, 2025
48061d1
HIR実装
shadowlink0122 Nov 16, 2025
b23863c
実行モードを分割/helpメッセージを更新
shadowlink0122 Nov 16, 2025
b1870a7
v0.14.0用の実装ドキュメントを整理
shadowlink0122 Nov 16, 2025
3fa211c
デバッグメッセージを分割
shadowlink0122 Nov 16, 2025
528deb8
HIR用ドキュメントを作成
shadowlink0122 Nov 16, 2025
ac22801
テスト設計の見直し
shadowlink0122 Nov 16, 2025
c1443af
不要な設定を削除
shadowlink0122 Nov 16, 2025
e5884a3
WIP: Remove format specifiers and migrate to expression interpolation
shadowlink0122 Nov 16, 2025
7380636
printlnの仕様を変更(指定子削除)
shadowlink0122 Nov 16, 2025
9d98b77
ファイル修正
shadowlink0122 Nov 16, 2025
0c9bf36
コンパイラ用のワークフロー
shadowlink0122 Nov 16, 2025
60a5de2
fix
shadowlink0122 Nov 17, 2025
cd9e965
HIR
shadowlink0122 Nov 18, 2025
45e967c
HIR
shadowlink0122 Nov 18, 2025
7c35d40
HIR
shadowlink0122 Nov 18, 2025
5299acc
HIR
shadowlink0122 Nov 18, 2025
7fc42c1
feat: Implement pointer support in HIR
shadowlink0122 Nov 19, 2025
83fbd0d
wip: Add pointer array type resolution (80% complete)
shadowlink0122 Nov 19, 2025
a14b7ba
refactor: Split large files and add debug support
shadowlink0122 Nov 19, 2025
cb2e867
debug: Add extensive debug messages for memory management
shadowlink0122 Nov 19, 2025
0b87665
fix: Implement basic new/delete operators
shadowlink0122 Nov 19, 2025
89f8b6e
feat: Complete basic memory management (new/delete)
shadowlink0122 Nov 19, 2025
61c4c4a
wip: Implementing global variables and function pointers
shadowlink0122 Nov 19, 2025
2c18c17
feat: Complete global variables implementation
shadowlink0122 Nov 20, 2025
361c175
fix: Fix array new expression generation
shadowlink0122 Nov 20, 2025
614b946
Implement function pointer type inference (P2)
shadowlink0122 Nov 20, 2025
f473713
feat: デフォルト引数の実装 (優先度7)
shadowlink0122 Nov 20, 2025
17f329f
feat: 破棄変数の複数宣言に対応 (優先度8)
shadowlink0122 Nov 20, 2025
2c028b8
fix: Fix assert condition conversion in HIR generation
shadowlink0122 Nov 20, 2025
8381fba
feat: Partial lambda body generation improvement
shadowlink0122 Nov 20, 2025
3349aec
feat: Add Option<T> and Result<T,E> template definitions
shadowlink0122 Nov 20, 2025
f5b4660
feat: Implement Option<T> and Result<T,E> type support (Priority 5)
shadowlink0122 Nov 20, 2025
88e00e4
fix: ポインタ配列の型解析を修正 (int*[N] → std::array<int*, N>)
shadowlink0122 Nov 20, 2025
a14e5c8
新しいスライド
shadowlink0122 Nov 20, 2025
0420f2f
save docs
shadowlink0122 Nov 20, 2025
d0a6aa1
save
shadowlink0122 Nov 20, 2025
4339f22
イントロ
shadowlink0122 Nov 21, 2025
83ade19
セクション1
shadowlink0122 Nov 21, 2025
abe9a49
セクション2
shadowlink0122 Nov 21, 2025
4ed4c39
スライド選択
shadowlink0122 Nov 21, 2025
75f8a3b
修正
shadowlink0122 Nov 21, 2025
63f87bc
セクション1修正
shadowlink0122 Nov 21, 2025
fb7dc7b
発表前
shadowlink0122 Nov 21, 2025
ddd0a15
目次追加
shadowlink0122 Nov 21, 2025
35b251f
プレゼンテーション修正
shadowlink0122 Nov 21, 2025
3f0b59e
バックアップとったので削除
shadowlink0122 Nov 21, 2025
b6f3d41
feat: 関数ポインタ配列要素の直接呼び出しをサポート
shadowlink0122 Nov 21, 2025
678877a
HIR
shadowlink0122 Nov 22, 2025
fb167df
feat: ポインタアドレス表示機能を実装
shadowlink0122 Nov 22, 2025
08e4450
fix: インタプリタモードの不要なデバッグ出力を修正
shadowlink0122 Nov 22, 2025
4cf0479
fix: Option<T>の引数なしvariant(None)のC++コード生成を修正
shadowlink0122 Nov 22, 2025
7dcb69b
HIR
shadowlink0122 Nov 22, 2025
d2d7a23
feat: static変数のサポートを実装
shadowlink0122 Nov 22, 2025
ceee86e
fix: 構造体定義順序の依存関係解決とセグフォ修正
shadowlink0122 Nov 22, 2025
cd11812
fix: 関数内構造体宣言による無限ループを修正
shadowlink0122 Nov 22, 2025
2616f4f
fix: static変数currentのポインタ演算誤判定を修正
shadowlink0122 Nov 22, 2025
df87b58
feat: enum typedef の完全サポートを実装
shadowlink0122 Nov 22, 2025
4c912c0
feat: typedef配列サイズで定数名をサポート
shadowlink0122 Nov 23, 2025
72ecea8
fix: 文字列と整数の連結時に自動型変換を追加
shadowlink0122 Nov 23, 2025
9df2424
feat: 文字列連結時の自動型変換機能を実装
shadowlink0122 Nov 23, 2025
a7eb58c
fix: HIRGlobalVar構造体定義順序を修正してimpl static変数を有効化
shadowlink0122 Nov 23, 2025
6dae78c
feat: インターフェースプライベートメソッドのサポートを実装
shadowlink0122 Nov 23, 2025
0336bf6
feat: Option/Resultにコピーコンストラクタとコピー代入演算子を追加
shadowlink0122 Nov 23, 2025
d98682d
feat: ジェネリック関数のパラメータ型生成を修正
shadowlink0122 Nov 23, 2025
119aeeb
HIR
shadowlink0122 Nov 23, 2025
c95e9bb
HIR
shadowlink0122 Nov 23, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
98 changes: 98 additions & 0 deletions .github/workflows/compiler-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
name: Cb Compiler CI

on:
push:
branches: ["**"]
pull_request:
branches: ["**"]

jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
clean: true
- name: Install clang-format
run: sudo apt-get update && sudo apt-get install -y clang-format
- name: Run clang-format
run: make lint

build:
runs-on: ubuntu-latest
needs: lint
steps:
- uses: actions/checkout@v4
with:
clean: true
- name: Show commit info
run: |
git log -1 --format="%H %s"
echo "Current branch: $(git branch --show-current)"
- name: Install build tools
run: sudo apt-get update && sudo apt-get install -y bison flex g++
- name: Build
run: make
- name: Upload build artifacts
uses: actions/upload-artifact@v4
with:
name: cb-build-compiler
path: |
cb
*.o
src/**/*.o
retention-days: 1

unit-test:
runs-on: ubuntu-latest
needs: build
steps:
- uses: actions/checkout@v4
with:
clean: true
- name: Download build artifacts
uses: actions/download-artifact@v4
with:
name: cb-build-compiler
- name: Make executable
run: chmod +x cb
- name: Install build tools (for test runner and compilation)
run: sudo apt-get update && sudo apt-get install -y g++
- name: Run unit tests (make unit-test)
run: make unit-test

integration-test:
runs-on: ubuntu-latest
needs: build
steps:
- uses: actions/checkout@v4
with:
clean: true
- name: Download build artifacts
uses: actions/download-artifact@v4
with:
name: cb-build-compiler
- name: Make executable
run: chmod +x cb
- name: Install build tools (for compilation)
run: sudo apt-get update && sudo apt-get install -y g++
- name: Run integration tests via compiler (make integration-test-compiler)
run: make integration-test-compiler

stdlib-test:
runs-on: ubuntu-latest
needs: build
steps:
- uses: actions/checkout@v4
with:
clean: true
- name: Download build artifacts
uses: actions/download-artifact@v4
with:
name: cb-build-compiler
- name: Make executable
run: chmod +x cb
- name: Install build tools (for compilation)
run: sudo apt-get update && sudo apt-get install -y g++
- name: Run stdlib tests via compiler (make stdlib-cb-test-compiler)
run: make stdlib-cb-test-compiler
26 changes: 13 additions & 13 deletions .github/workflows/ci.yml → .github/workflows/interpreter-ci.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Cb CI
name: Cb Interpreter CI

on:
push:
Expand Down Expand Up @@ -36,9 +36,9 @@ jobs:
- name: Upload build artifacts
uses: actions/upload-artifact@v4
with:
name: cb-build
name: cb-build-interpreter
path: |
main
cb
*.o
src/**/*.o
retention-days: 1
Expand All @@ -53,9 +53,9 @@ jobs:
- name: Download build artifacts
uses: actions/download-artifact@v4
with:
name: cb-build
name: cb-build-interpreter
- name: Make executable
run: chmod +x main
run: chmod +x cb
- name: Install build tools (for test runner)
run: sudo apt-get update && sudo apt-get install -y g++
- name: Run unit tests (make unit-test)
Expand All @@ -71,11 +71,11 @@ jobs:
- name: Download build artifacts
uses: actions/download-artifact@v4
with:
name: cb-build
name: cb-build-interpreter
- name: Make executable
run: chmod +x main
- name: Run integration tests (make integration-test)
run: make integration-test
run: chmod +x cb
- name: Run integration tests (make integration-test-interpreter)
run: make integration-test-interpreter

stdlib-test:
runs-on: ubuntu-latest
Expand All @@ -87,10 +87,10 @@ jobs:
- name: Download build artifacts
uses: actions/download-artifact@v4
with:
name: cb-build
name: cb-build-interpreter
- name: Make executable
run: chmod +x main
run: chmod +x cb
- name: Install build tools (for test runner)
run: sudo apt-get update && sudo apt-get install -y g++
- name: Run stdlib tests (make stdlib-test)
run: make stdlib-test
- name: Run stdlib tests (make stdlib-cb-test-interpreter)
run: make stdlib-cb-test-interpreter
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@
*.exe
*.out
*.app
cb
main
main-asan
cgen_main
Expand All @@ -44,6 +45,7 @@ cgen_main
test_main
**/test_main
test_debug_main
dual_mode_test

# bison/flex生成物
*.dSYM
Expand All @@ -61,3 +63,7 @@ parser.output

# debug information files
*.dwo
tmp/*
# Cb compiled executables
tests/**/*.o
sample/**/*.o
Loading
Loading