saqut-compiler/examples/semantic
saqut d9b023c550 feat(faz3): semantik analiz — tip denetimi + yapısal doğrulama (#72)
- src/semantic/type_checker: her ExpressionNode'a resolvedType atar
  * literal bağlama-göre tiplenir (float x = 1 → uyarısız)
  * değişken→değişken genişletme → W004
  * daraltma / farklı tip → E003
  * fonksiyon çağrısı argüman sayısı/tipi → E008
  * return tipi uyumsuzluğu → E003 (checkAssign üzerinden)
- src/semantic/structural_validator: kontrol akışı kuralları
  * break/continue döngü dışı → E004
  * return fonksiyon dışı → E005
- W004 diagnostic kataloğa eklendi
- saqut check komutu: tokenize→parse→collect→typecheck→validate
- examples/semantic/: widening, narrowing, bad_return, break_outside, bad_args
- MISSION-FAZ3.md eklendi

Doğrulama:
  fibonacci.sqt → 0 hata 0 uyarı ✓
  widening.sqt  → W004 ✓
  narrowing.sqt → E003 ✓
  break_outside.sqt → E004 ✓
  bad_args.sqt  → E008 ✓
  tests/run.sh  → TUM TESTLER GECTI ✓

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-18 17:20:06 +03:00
..
bad_args.sqt feat(faz3): semantik analiz — tip denetimi + yapısal doğrulama (#72) 2026-06-18 17:20:06 +03:00
bad_return.sqt feat(faz3): semantik analiz — tip denetimi + yapısal doğrulama (#72) 2026-06-18 17:20:06 +03:00
break_outside.sqt feat(faz3): semantik analiz — tip denetimi + yapısal doğrulama (#72) 2026-06-18 17:20:06 +03:00
narrowing.sqt feat(faz3): semantik analiz — tip denetimi + yapısal doğrulama (#72) 2026-06-18 17:20:06 +03:00
widening.sqt feat(faz3): semantik analiz — tip denetimi + yapısal doğrulama (#72) 2026-06-18 17:20:06 +03:00