سؤال

الجري الجافة

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

تتوقف على هذا الخط:

__thread int cpfs_errno;

مع خطأ في التحليل:

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

التحقق من الوثائق ويخرج الغرغرة دون ذكر __thread. لكن __thread هو جزء من المواصفات C99, ، أي جبيرة تدعم (إدراج مرجع).

ماذا يحدث هنا؟ كيف يمكنني الحصول على شظية للاعتراف __thread?

هل كانت مفيدة؟

المحلول

من شظية الأسئلة الشائعة, ، فقط اضف -D__thread= إلى سطر أوامر الشظية. هذا سيكون له تأثير إزالة __thread الكلمة الرئيسية من الكود أثناء فحصها. أفترض هنا أن الشظية لا يدرك الخيط بشكل خاص ، ولن تكون قادرًا على استخدام المعلومات التي تم نقلها إلى CCC بواسطة الكلمة الرئيسية.

نصائح أخرى

__thread ليس في C99. إنه امتداد GNU C - القسم الذي ربطته هو في الداخل امتدادات لعائلة اللغة C. يصف الامتداد من حيث التغييرات على معيار C99 ، ويفترض أنه تحضير لاعتماده في مراجعة مستقبلية للمعيار.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top