我正在尝试使用coq从frama-c WP插件教程运行swap.c
示例,但我收到BuiltIn.v
文件的以下编译错误;
$frama-c -wp -wp-rte -wp-proof coq swap.c
[kernel] Parsing FRAMAC_SHARE/libc/__fc_builtin_for_normalization.i (no preprocessing)
[kernel] Parsing swap.c (with preprocessing)
[rte] annotating function swap
[wp] 5 goals scheduled
[wp] [Coq] Compiling 'BuiltIn.v'.
[wp] [Coq] 'BuiltIn.v' compilation failed.
Don't know what to do with -as bool -as int -as real -as map
See -help for the list of supported options
[wp] [Coq] Compiling 'BuiltIn.v'.
[wp] [Coq] 'BuiltIn.v' compilation failed.
Don't know what to do with -as bool -as int -as real -as map
See -help for the list of supported options
[wp] [Coq] Compiling 'BuiltIn.v'.
[wp] [Coq] 'BuiltIn.v' compilation failed.
Don't know what to do with -as bool -as int -as real -as map
See -help for the list of supported options
[wp] [Coq] Goal typed_swap_post : Failed
Error: Compilation of 'BuiltIn.v' failed.
[wp] [Coq] Goal typed_swap_assert_rte_mem_access_3 : Failed
Error: Compilation of 'BuiltIn.v' failed.
[wp] [Coq] Goal typed_swap_assert_rte_mem_access : Failed
Error: Compilation of 'BuiltIn.v' failed.
[wp] Proved goals: 2 / 5
Qed: 2 (0.13ms-2ms)
Coq: 0 (failed: 3)
版本; Frama-c Magnesium-20151002,Coq 8.5,OCaml 4.02.3
根据frama-c网站的说法,8.4+应该没问题,但我认为不是! 问题是Coq的版本(我认为)。
WP插件教程列表-wp-coq-opt
选项,用于传递coqc选项。所以我试着跟随;
frama-c -wp -wp-rte -wp-proof coqide -wp-coq-opt="-compat 8.4" swap.c
[kernel] user error: option `-wp-coq-opt=-compat 8.4' is unknown
没用!对此有何解决方案?