Mise à jour 2.202
01/08/2026
v2.202.0.0BETAMINOR
Seymour1 août 2026
F5-L3 : compilateur complet — vars persistantes, while (boucle par table de sauts), func/call (macro inline) + 9 tests
FfxLib/Ai/AtelScript/AtelProgramCompiler.cs(nouveau) : l'étape 0 collecte lesfunc(blocs nommés) ; l'étape 1 fait les vars persistantes —var name = expr;résout le nom dans la table de l'AiFile ou crée une variable privée (AppendPrivateVariableDescriptor+TryFindFreePrivateVariableSlot) et initialise ; l'étape 2 gère ifs/whiles/assigns/calls.EmitWhile: boucle par table de sauts suivant le motif prouvéAppendGuardedAction(garde →D7vers le flux original → corps →B0retour à la garde ;Rebuild+GrowWorkerJumpTable+ re-pointage d'entrée — cibles vérifiées dans le test : sortie=point d'entrée original, boucle=baseRel).call name;déploie la fonction inline (macro — pas de pile JSR/RTS, documenté).- AST/parser étendus :
AtelWhile/AtelFuncDecl/AtelCall+ parsingwhile/func/call(mot-clécalldans le lexer). - Tests (9 + 1 test de parser mis à jour) : var crée une privée (m001) / pas de doublon (nom existant) / m000 sans stockage privé → erreur honnête claire ; while round-trip avec table de sauts +2 slots et cibles vérifiées ; func/call se déploie inline ; call sans func → erreur ; if+while combinés ; while avec call dans le corps ; garde
>(ordre inversé) dans un while. - Baseline : 324/324 PASS (312 + 12 nouveaux). ### MINOR ### MINOR
v2.201.0.0