RÉFÉRENCE VITTE / Outils

CLI et diagnostics

La CLI expose les étapes du compilateur, les formats de diagnostic, la configuration du projet et des options de génération.

Niveau de garantieLes commandes sont présentes ; le pipeline natif ne couvre qu’un sous-ensemble, et certaines entrées passent par compatibilité.
Source de référence : README.md · src/bootstrap/cli/README.md · src/bootstrap/cli/command_spec.def

Commandes principales

CommandeUsageIndication dans le dépôt
vitte --versionAfficher la version.Vérification rapide de l’installation.
vitte lex fichier.vitAfficher les tokens.Explorer le découpage lexical.
vitte parse fichier.vitAnalyser la syntaxe.Vérifier la structure d’un fichier.
vitte check fichier.vitVérifier le fichier.Le frontend natif vérifie son sous-ensemble ; d’autres sources suivent la compatibilité. La suite native teste 9 cas valides et 18 erreurs attendues.
vitte compile fichier.vit --stop-after-semaArrêter après l’analyse sémantique.Commande vérifiée par test-sema sur procédures, imports et contrats.
vitte compile fichier.vitCompiler le programme.HIR/IR/C17 natifs validés pour formes, tableaux, choix et opérations scalaires ; génériques et autres formes avancées restent limités.
vitte run fichier.vitCompiler et exécuter.Onze fixtures runtime du Makefile compilent et s’exécutent ; cette liste n’est pas une couverture complète du langage.
vitte explain E0501Expliquer un code de diagnostic public.Les codes publics incluent des préfixes E, W, N et H.

Construire depuis le dépôt

make
vitte --version
vitte check examples/hello.vit

Le dépôt utilise un frontend natif pour un sous-ensemble et un chemin bootstrap/compatibilité pour certaines sources. Le README racine et src/docs/language_coverage.md ne reflètent pas tous le même état que les tests et le README du driver ; la matrice État du support indique les preuves à privilégier.

Options utiles du CLI documenté

  • --diagnostic=terminal|json|sarif|lsp choisit le format du diagnostic.
  • --stop-after-lexer, --stop-after-parser, --stop-after-sema arrêtent le pipeline à une étape.
  • --emit-tokens, --emit-ast, --emit-hir, --emit-ir, --emit-c demandent des sorties intermédiaires lorsque l’étape est disponible.
  • --target, --backend, --profile et -o configurent cible, backend, profil et fichier de sortie.
  • --manifest-path, --project-root et VITTE_MODULE_PATH aident à résoudre la configuration et les modules.

La présence d’une option dans l’aide ne garantit pas que chaque construction soit acceptée ou puisse produire un exécutable. Les tests runtime vérifient des programmes précis ; consulte les matrices par construction avant de dépendre d’une fonctionnalité.

Lire un diagnostic

  1. Lis le code et le titre : ils identifient la classe du problème.
  2. Vérifie la phase et l’emplacement dans la source.
  3. Lis les notes et suggestions qui accompagnent le message.
  4. Corrige d’abord l’erreur la plus proche de sa cause ; les erreurs suivantes peuvent en découler.

Documentation CLI détaillée · README du dépôt.