Question

attelle Exécution

matt@stanley:~/cpfs$ splint -paramuse +gnuextensions cpfs.c

Haltes sur cette ligne:

__thread int cpfs_errno;

Avec une erreur d'analyse:

cpfs.c:127:13: Parse Error: Non-function declaration: __thread :
               int. (For help on parse errors, see splint -help parseerrors.)
*** Cannot continue.

Vérification de la documentation et gargarisme arrive sans mention __thread. Cependant __thread fait partie de la spécification C99 , ce qui aurait Attelle supports (insert référence).

Qu'est-ce qui se passe ici? Comment puis-je obtenir attelle à reconnaître __thread?

Était-ce utile?

La solution

De la attelle FAQ , il suffit d'ajouter -D__thread= à la ligne de commande attelle. Cela aura pour effet de supprimer le mot-clé __thread du code tout en attelle l'examine. Je suppose ici que l'attelle est pas thread particulièrement sensible, et ne serait pas en mesure d'utiliser l'information qui a été transmise à GCC par le mot-clé.

Autres conseils

__thread est pas C99. Il est une extension GNU C - la section que vous avez lié à est dans Extensions à la famille C Langue . Il décrit l'extension en termes de changements à la norme C99, probablement que la préparation de l'avoir adopté une révision future de la norme.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top