Kevin Kofler :
Je pense qu'il voulait appeler des ROM_CALLs dans un callback avec OPTIMIZE_ROM_CALLS. C'est le genre de trucs à ne pas faire sans précautions particulières, c'est-à-dire:
void *olda5=__jmp_tbl;
__jmp_tbl=*(void **)0xc8;
...
__jmp_tbl=olda5;
Voilà justement. Mais je ne savais pas. De plus j'avais un autre problème à l'époque (un truc tout con):
TRY
instructions;
goto apres;
ONERR
instructions;
ENDTRY
apres:
Et si je vais à apres, à la prochaine erreur basic une fois l'exécution du prog terminée (pas toutes, mais ex. Window variable domain) je reçois une ER_THROW à la place... et j'ai aussi cherché longtemps. Cependant j'aurais bien pensé que le goto apres aurait généré une erreur de compilation, or ce n'est pas le cas.
Et après on gueule dessus les programmeurs BASIC car ça plante, mais bon c'est RAREMENT leur faute (les barres noire ça ne vient qu'avec les fenêtres (TOP-BOTTOM -> FULL et cie)
Ximoon :
Plus précisément? (qu'on voit juste si finalement ça venait pas de toi
)
Pourquoi tu dis ça??? Non, juste qu'il faudrait peut-être préciser ça dans la doc de TIGCC de manière plus claire. En fait le problème venait avec l'appel au Var-Link, et même avec certaines boîtes de dialogue (à n'y rien comprendre)... Le Var-Link, même s'il ne plante plus à présent, je l'ai jarté car je n'en voyais pas vraiment l'utilité.
En gros, pour l'équipe TIGCC, ce serait "sympa" de lancer une erreur de compilation comme en TI-BASIC lorsqu'on fait des sauts entre les blocs TRY...ONERR...ENDTRY.