Bonjour,

Dans un environnement de compilation qui fonctionne depuis des années, il m'arrive un problème curieux:
- Step 1: J'ai un projet C utilisant des library qui compile et qui fonctionne très bien.
- Step 2: Si je déclare une variable supplémentaire dans un fichier, le projet C compile et fonctionne très bien.
- Step 3: Si j'affecte cette variable, alors le projet C compile, mais ne fonctionne pas.

En y regardant de plus près, j'ai trouvé qu'il y avait une désynchronisation entre les étiquettes des fonctions incluent dans la library et les instructions associées.
Voici une illustration des step 1 et 2:
Disons qu'il existe une fonction convert_int() définie dans la lib, en regardant ses instructions en assembleur je trouve:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
convert_int: instruction 1
instruction 2
instruction 3
instruction 4
instruction 5
[...]
Voici une illustration du step 3:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
instruction 1
instruction 2
convert_int: instruction 3
instruction 4
instruction 5
[...]
Mon programme plante lorsque la première fonction de la library est appelée, car il manque des instructions !!

Avez-vous déjà été confronté à un problème similaire ?

Pour une raison que j'ignore, l'affectation de ma variable doit avoir une influence sur le link de ma lib.

Si vous avez des pistes je suis preneur.

Merci,

Bat