Я новичок в Frama-C, поэтому, возможно, мне не хватает чего-то очевидного. Когда я пытаюсь загрузить файлы проекта (среди которых есть файлы .C), Frama-C сообщает об ошибке в окне консоли и прекращает обработку.
[kernel] FRAMAC_SHARE/libc/__fc_alloc_axiomatic.h:30:
invalid ghost in extern linkage specification:
Location: between lines 30 and 45, before or at token: }
28 #include "__fc_define_wchar_t.h"
29
30 __BEGIN_DECLS
31
32 /*@ ghost extern int __fc_heap_status __attribute__((FRAMA_C_MODEL)); */
33
34 /*@ axiomatic dynamic_allocation {
35 @ predicate is_allocable{L}(integer n) // Can a block of n bytes be allocated?
36 @ reads __fc_heap_status;
37 @ // The logic label L is not used, but it must be present because the
38 @ // predicate depends on the memory state
39 @ axiom never_allocable{L}:
40 @ \forall integer i;
41 @ i < 0 || i > __FC_SIZE_MAX ==> !is_allocable(i);
42 @ }
43 */
44
45 __END_DECLS
46
47 __POP_FC_STDLIB
Похоже, что ошибка в библиотеке спецификаций функций Frama-C? Я использую Frama-C 20.0 (Calcium) на Ubuntu 19.10. Frama-C был установлен через opam
. Любое понимание того, что это означает, было бы очень полезно.
$FRAMA_C_SHARE/libc/__fc_alloc_axiomatic.h
или в образцеtest.c
файла, который включаетstdlib.h
(который, в свою очередь, включает__fc_alloc_axiomatic.h
), используя в качестве командной строкиframa-c -print test.c
. Не могли бы вы предоставить mcve? - person Virgile   schedule 08.06.2020#include<stdlib.h>
в файле с именемtest.C
. - person Daniel Genin   schedule 09.06.2020.C
здесь проблема. и потребует отредактировать вопрос, чтобы прямо упомянуть этот факт. - person Virgile   schedule 10.06.2020