Version 3.1.0Vollständig implementiertLetzte Aktualisierung: 2026-02-02

Fehlerbehandlung & Lösungsvorschläge

Ein umfassendes System zur Identifizierung, Analyse und proaktiven Behebung von Fehlern im VelinScript Compiler.

Übersicht

Der VelinScript Compiler verfügt über ein intelligentes Fehlerbehandlungssystem. Es hilft Entwicklern nicht nur dabei, zu verstehen, was schiefgelaufen ist, sondern liefert auch sofortige, kontextbezogene Lösungsvorschläge.

Fehlertypen

1. Parse Errors (Syntax-Fehler)

❌ Parse error: Unexpected token at line 5, column 10
📁 Datei: main.velin
📍 Position: Zeile 5, Spalte 10
📖 Erwartet: function
🔍 Gefunden: fn
💡 Did you mean: 'fn'?
💡 Tip: Function declarations use 'fn', not 'function'

2. Type Errors (Typ-Fehler)

Tritt auf bei Typ-Mismatch, undefinierten Variablen oder falschen Argument-Anzahlen.

❌ Type error: Type mismatch at line 12, column 15
💡 Did you mean: 'length'?
💡 Beispiel für explizite Typ-Annotation: let x: number = 42;

CodeGen Errors

Fehler während der IR-Generierung oder bei Target-spezifischen Prozessen.

Internal Errors

Seltene Compiler-Bugs. Werden direkt zur Meldung auf GitHub vorgeschlagen.

CompilationContext API

Der CompilationContext bietet zentrale Methoden zur Fehlerbehandlung innerhalb des Compiler-Backends.

// Fehler hinzufügen
context.add_error(CompilerError::parse_error(...));

// Warnings hinzufügen
context.add_warning("Deprecated function".to_string());

// Fehlerstatistiken abrufen
let stats = context.get_error_statistics();
println!("Parse Errors: {}", stats.parse_errors);

Lösungsvorschläge

Did you mean?

Levenshtein-Distanz-basierte Korrekturvorschläge für Variablen und Keywords.

Code-Beispiele

Praktische Vorlagen direkt in der Fehlermeldung zur schnellen Korrektur.

Doku-Links

Direkte Links zur relevanten Sprachspezifikation oder Best-Practice Guides.

CLI Integration

$ velin compile -i main.velin
✗ Kompilierung fehlgeschlagen mit 2 Fehlern:
❌ Parse error: Unexpected token at line 5, column 10
...
💡 Tipp: Nutze 'velin check --autofix' für automatische Korrekturen