Skip to content
Snippets Groups Projects
Commit ed4f5130 authored by Patrick Baudin's avatar Patrick Baudin
Browse files

Merge branch 'feature/patrick/ptests-diff' into 'master'

[ptests] adds @<ptest-name>.[<ptest-number>.{exec,execnow}].diff

Closes #1152

See merge request frama-c/frama-c!3871
parents 288046d9 5a4a1a7b
No related branches found
No related tags found
No related merge requests found
Showing
with 48 additions and 48 deletions
LOG: @PTEST_NAME@.dot LOG: @PTEST_NAME@.dot
PLUGIN: from,inout,eva,variadic,scope,dive PLUGIN: from,inout,eva,variadic,scope,dive
OPT: -eva-msg-key=-initial-state -eva-no-show-progress -dive-output-dot @PTEST_RESULT@/@PTEST_NAME@.dot OPT: -eva-msg-key=-initial-state -eva-no-show-progress -dive-output-dot ./@PTEST_NAME@.dot
FILTER: perl -0777 -pe 's/\[server[^[]*//g' FILTER: perl -0777 -pe 's/\[server[^[]*//g'
/* run.config /* run.config
PLUGIN: @PTEST_PLUGIN@ markdown-report.eva-info PLUGIN: @PTEST_PLUGIN@ markdown-report.eva-info
OPT: -mdr-remarks %{dep:@PTEST_DIR@/@PTEST_NAME@.remarks.md} OPT: -mdr-remarks %{dep:./@PTEST_NAME@.remarks.md}
*/ */
/* extracted from Juliet test suite v1.3 for C /* extracted from Juliet test suite v1.3 for C
......
PLUGIN: inout,scope,eva markdown-report PLUGIN: inout,scope,eva markdown-report
LOG: @PTEST_NAME@.@PTEST_NUMBER@.md LOG: @PTEST_NAME@.@PTEST_NUMBER@.md
CMD: @frama-c@ -eva @PTEST_FILE@ -mdr-gen md -mdr-date="now" -mdr-out @PTEST_RESULT@/@PTEST_NAME@.@PTEST_NUMBER@.md CMD: @frama-c@ -eva @PTEST_FILE@ -mdr-gen md -mdr-date="now" -mdr-out ./@PTEST_NAME@.@PTEST_NUMBER@.md
/* run.config /* run.config
NOFRAMAC: use execnow for proper sequencing of executions NOFRAMAC: use execnow for proper sequencing of executions
EXECNOW: BIN @PTEST_NAME@_parse.sav LOG @PTEST_NAME@.parse.log LOG @PTEST_NAME@.parse.err @frama-c@ @PTEST_FILE@ -save @PTEST_RESULT@/@PTEST_NAME@_parse.sav > @PTEST_RESULT@/@PTEST_NAME@.parse.log 2> @PTEST_RESULT@/@PTEST_NAME@.parse.err EXECNOW: BIN @PTEST_NAME@_parse.sav LOG @PTEST_NAME@.parse.log LOG @PTEST_NAME@.parse.err @frama-c@ @PTEST_FILE@ -save ./@PTEST_NAME@_parse.sav > ./@PTEST_NAME@.parse.log 2> ./@PTEST_NAME@.parse.err
EXECNOW: BIN @PTEST_NAME@_eva.sav LOG @PTEST_NAME@.eva.log LOG @PTEST_NAME@.eva.err @frama-c@ -load %{dep:@PTEST_RESULT@/@PTEST_NAME@_parse.sav} -eva -save @PTEST_RESULT@/@PTEST_NAME@_eva.sav > @PTEST_RESULT@/@PTEST_NAME@.eva.log 2> @PTEST_RESULT@/@PTEST_NAME@.eva.err EXECNOW: BIN @PTEST_NAME@_eva.sav LOG @PTEST_NAME@.eva.log LOG @PTEST_NAME@.eva.err @frama-c@ -load %{dep:./@PTEST_NAME@_parse.sav} -eva -save ./@PTEST_NAME@_eva.sav > ./@PTEST_NAME@.eva.log 2> ./@PTEST_NAME@.eva.err
EXECNOW: BIN @PTEST_NAME@.sarif.unfiltered LOG @PTEST_NAME@.sarif.log LOG @PTEST_NAME@.sarif.err @frama-c@ -load %{dep:@PTEST_RESULT@/@PTEST_NAME@_eva.sav} -then -mdr-out @PTEST_RESULT@/@PTEST_NAME@.sarif.unfiltered -mdr-gen sarif -mdr-no-print-libc -mdr-sarif-deterministic > @PTEST_RESULT@/@PTEST_NAME@.sarif.log 2> @PTEST_RESULT@/@PTEST_NAME@.sarif.err EXECNOW: BIN @PTEST_NAME@.sarif.unfiltered LOG @PTEST_NAME@.sarif.log LOG @PTEST_NAME@.sarif.err @frama-c@ -load %{dep:./@PTEST_NAME@_eva.sav} -then -mdr-out ./@PTEST_NAME@.sarif.unfiltered -mdr-gen sarif -mdr-no-print-libc -mdr-sarif-deterministic > ./@PTEST_NAME@.sarif.log 2> ./@PTEST_NAME@.sarif.err
EXECNOW: LOG @PTEST_NAME@.sarif sed -e "s:@PTEST_SESSION@:PTEST_SESSION:" %{dep:@PTEST_NAME@.sarif.unfiltered} > @PTEST_NAME@.sarif 2> @NULL EXECNOW: LOG @PTEST_NAME@.sarif sed -e "s:@PTEST_SESSION@:PTEST_SESSION:" %{dep:@PTEST_NAME@.sarif.unfiltered} > @PTEST_NAME@.sarif 2> @NULL
*/ */
#include "__fc_builtin.h" #include "__fc_builtin.h"
......
/* run.config /* run.config
CMD: @frama-c@ -eva -eva-no-results -mdr-gen sarif -mdr-sarif-deterministic CMD: @frama-c@ -eva -eva-no-results -mdr-gen sarif -mdr-sarif-deterministic
BIN: with-libc.sarif.unfiltered BIN: with-libc.sarif.unfiltered
OPT: -mdr-out @PTEST_RESULT@/with-libc.sarif.unfiltered OPT: -mdr-out ./with-libc.sarif.unfiltered
EXECNOW: LOG with-libc.sarif sed -e "s:@PTEST_SESSION@:PTEST_SESSION:" %{dep:with-libc.sarif.unfiltered} > with-libc.sarif 2> @NULL EXECNOW: LOG with-libc.sarif sed -e "s:@PTEST_SESSION@:PTEST_SESSION:" %{dep:with-libc.sarif.unfiltered} > with-libc.sarif 2> @NULL
BIN: without-libc.sarif.unfiltered BIN: without-libc.sarif.unfiltered
OPT: -mdr-no-print-libc -mdr-out @PTEST_RESULT@/without-libc.sarif.unfiltered OPT: -mdr-no-print-libc -mdr-out ./without-libc.sarif.unfiltered
EXECNOW: LOG without-libc.sarif sed -e "s:@PTEST_SESSION@:PTEST_SESSION:" %{dep:without-libc.sarif.unfiltered} > without-libc.sarif 2> @NULL EXECNOW: LOG without-libc.sarif sed -e "s:@PTEST_SESSION@:PTEST_SESSION:" %{dep:without-libc.sarif.unfiltered} > without-libc.sarif 2> @NULL
*/ */
#include <string.h> #include <string.h>
......
/* run.config* /* run.config*
BIN: @PTEST_NAME@.sarif.unfiltered BIN: @PTEST_NAME@.sarif.unfiltered
OPT: -eva -then -mdr-sarif-deterministic -mdr-gen sarif -mdr-out @PTEST_RESULT@/@PTEST_NAME@.sarif.unfiltered OPT: -eva -then -mdr-sarif-deterministic -mdr-gen sarif -mdr-out ./@PTEST_NAME@.sarif.unfiltered
EXECNOW: LOG @PTEST_NAME@.sarif sed -e "s:@PTEST_SESSION@:PTEST_SESSION:" %{dep:@PTEST_NAME@.sarif.unfiltered} > @PTEST_NAME@.sarif 2> @NULL EXECNOW: LOG @PTEST_NAME@.sarif sed -e "s:@PTEST_SESSION@:PTEST_SESSION:" %{dep:@PTEST_NAME@.sarif.unfiltered} > @PTEST_NAME@.sarif 2> @NULL
*/ */
#include "string.c" #include "string.c"
......
/* run.config /* run.config
LOG: output_to_file.txt LOG: output_to_file.txt
STDOPT: #"-nonterm-log :@PTEST_RESULT@/output_to_file.txt" STDOPT: #"-nonterm-log :./output_to_file.txt"
*/ */
void loop() { void loop() {
......
PLUGIN: server PLUGIN: server
LOG: @PTEST_NAME@.out.json LOG: @PTEST_NAME@.out.json
OPT: -server-batch %{dep:@PTEST_DIR@/@PTEST_NAME@.json} -server-batch-output-dir @PTEST_RESULT@ -server-msg-key use-relative-filepath OPT: -server-batch %{dep:./@PTEST_NAME@.json} -server-batch-output-dir @PTEST_RESULT@ -server-msg-key use-relative-filepath
/* run.config /* run.config
PLUGIN: variadic PLUGIN: variadic
LOG: @PTEST_NAME@.pretty.c LOG: @PTEST_NAME@.pretty.c
OPT: %{dep:@PTEST_DIR@/empty.c} -no-print-libc -print -ocode @PTEST_RESULT@/@PTEST_NAME@.pretty.c -then @PTEST_RESULT@/@PTEST_NAME@.pretty.c OPT: %{dep:./empty.c} -no-print-libc -print -ocode ./@PTEST_NAME@.pretty.c -then ./@PTEST_NAME@.pretty.c
*/ */
#include <stdio.h> #include <stdio.h>
......
/* run.config /* run.config
OPT: %{dep:@PTEST_DIR@/cpu_b.c} -machdep x86_16 -print OPT: %{dep:./cpu_b.c} -machdep x86_16 -print
*/ */
typedef unsigned short DWORD ; typedef unsigned short DWORD ;
......
/* run.config /* run.config
OPT: %{dep:@PTEST_DIR@/cpu_a.c} -machdep x86_16 -print OPT: %{dep:./cpu_a.c} -machdep x86_16 -print
*/ */
typedef unsigned int DWORD ; typedef unsigned int DWORD ;
......
/* run.config /* run.config
STDOPT: +"%{dep:@PTEST_DIR@/merge2.c}" STDOPT: +"%{dep:./merge2.c}"
*/ */
extern int x; extern int x;
/* run.config /* run.config
STDOPT: +"%{dep:@PTEST_DIR@/merge.c}" STDOPT: +"%{dep:./merge.c}"
*/ */
int x =2; int x =2;
/*run.config /*run.config
MACRO: SHARE @FRAMAC_SHARE@/compliance MACRO: SHARE @FRAMAC_SHARE@/compliance
NOFRAMAC: NOFRAMAC:
EXECNOW: LOG json_@PTEST_NAME@_1.txt python3 -m json.tool < @SHARE@/c11_functions.json | head -n 2 | tail -n 1 > @PTEST_RESULT@/json_@PTEST_NAME@_1.txt 2> @DEV_NULL@ EXECNOW: LOG json_@PTEST_NAME@_1.txt python3 -m json.tool < @SHARE@/c11_functions.json | head -n 2 | tail -n 1 > ./json_@PTEST_NAME@_1.txt 2> @DEV_NULL@
EXECNOW: LOG json_@PTEST_NAME@_2.txt python3 -m json.tool < @SHARE@/glibc_functions.json | head -n 2 | tail -n 1 > @PTEST_RESULT@/json_@PTEST_NAME@_2.txt 2> @DEV_NULL@ EXECNOW: LOG json_@PTEST_NAME@_2.txt python3 -m json.tool < @SHARE@/glibc_functions.json | head -n 2 | tail -n 1 > ./json_@PTEST_NAME@_2.txt 2> @DEV_NULL@
EXECNOW: LOG json_@PTEST_NAME@_3.txt python3 -m json.tool < @SHARE@/nonstandard_identifiers.json | head -n 2 | tail -n 1 > @PTEST_RESULT@/json_@PTEST_NAME@_3.txt 2> @DEV_NULL@ EXECNOW: LOG json_@PTEST_NAME@_3.txt python3 -m json.tool < @SHARE@/nonstandard_identifiers.json | head -n 2 | tail -n 1 > ./json_@PTEST_NAME@_3.txt 2> @DEV_NULL@
EXECNOW: LOG json_@PTEST_NAME@_4.txt python3 -m json.tool < @SHARE@/posix_identifiers.json | head -n 2 | tail -n 1 > @PTEST_RESULT@/json_@PTEST_NAME@_4.txt 2> @DEV_NULL@ EXECNOW: LOG json_@PTEST_NAME@_4.txt python3 -m json.tool < @SHARE@/posix_identifiers.json | head -n 2 | tail -n 1 > ./json_@PTEST_NAME@_4.txt 2> @DEV_NULL@
EXECNOW: LOG json_@PTEST_NAME@_5.txt python3 -m json.tool < @SHARE@/compiler_builtins.json | head -n 2 | tail -n 1 > @PTEST_RESULT@/json_@PTEST_NAME@_5.txt 2> @DEV_NULL@ EXECNOW: LOG json_@PTEST_NAME@_5.txt python3 -m json.tool < @SHARE@/compiler_builtins.json | head -n 2 | tail -n 1 > ./json_@PTEST_NAME@_5.txt 2> @DEV_NULL@
EXECNOW: LOG json_@PTEST_NAME@_6.txt python3 -m json.tool < @SHARE@/gcc_builtins.json | head -n 2 | tail -n 1 > @PTEST_RESULT@/json_@PTEST_NAME@_6.txt 2> @DEV_NULL@ EXECNOW: LOG json_@PTEST_NAME@_6.txt python3 -m json.tool < @SHARE@/gcc_builtins.json | head -n 2 | tail -n 1 > ./json_@PTEST_NAME@_6.txt 2> @DEV_NULL@
EXECNOW: LOG json_@PTEST_NAME@_7.txt python3 %{dep:@PTEST_DIR@/sanity-checks.py} @SHARE@ > @PTEST_RESULT@/json_@PTEST_NAME@_7.txt 2> @DEV_NULL@ EXECNOW: LOG json_@PTEST_NAME@_7.txt python3 %{dep:./sanity-checks.py} @SHARE@ > ./json_@PTEST_NAME@_7.txt 2> @DEV_NULL@
*/ */
/*run.config /*run.config
EXIT: 1 EXIT: 1
DEPS: @PTEST_DIR@/directory_path/README DEPS: ./directory_path/README
OPT: -add-path %{dep:@PTEST_DIR@/file_path} -add-path @PTEST_DIR@/directory_path -add-path @PTEST_DIR@/none OPT: -add-path %{dep:./file_path} -add-path ./directory_path -add-path ./none
EXIT: 0 EXIT: 0
MODULE: empty abstract abstract2 MODULE: empty abstract abstract2
OPT: OPT:
*/ */
// Note: the dependency @PTEST_DIR@/directory_path/README is used to create the directory directory_path by the copy_files of the dune file. // Note: the dependency ./directory_path/README is used to create the directory directory_path by the copy_files of the dune file.
/* run.config /* run.config
NOFRAMAC: testing frama-c-script, not frama-c itself NOFRAMAC: testing frama-c-script, not frama-c itself
EXECNOW: LOG build-callgraph.res LOG build-callgraph.err PTESTS_TESTING=1 %{bin:frama-c-script} heuristic-print-callgraph %{dep:@PTEST_DIR@/@PTEST_NAME@.i} > @PTEST_RESULT@/build-callgraph.res 2> @PTEST_RESULT@/build-callgraph.err EXECNOW: LOG build-callgraph.res LOG build-callgraph.err PTESTS_TESTING=1 %{bin:frama-c-script} heuristic-print-callgraph %{dep:./@PTEST_NAME@.i} > ./build-callgraph.res 2> ./build-callgraph.err
*/ */
#include <stdio.h> #include <stdio.h>
......
/* run.config /* run.config
NOFRAMAC: testing frama-c-script, not frama-c itself NOFRAMAC: testing frama-c-script, not frama-c itself
DEPS: @PTEST_DEPS@ @PTEST_DIR@/for-find-fun.c DEPS: @PTEST_DEPS@ ./for-find-fun.c
DEPS: @PTEST_DEPS@ @PTEST_DIR@/for-find-fun2.c DEPS: @PTEST_DEPS@ ./for-find-fun2.c
DEPS: @PTEST_DEPS@ @PTEST_DIR@/for-list-functions.c DEPS: @PTEST_DEPS@ ./for-list-functions.c
DEPS: @PTEST_DEPS@ @PTEST_DIR@/list_functions.i DEPS: @PTEST_DEPS@ ./list_functions.i
DEPS: @PTEST_DEPS@ @PTEST_DIR@/main.c DEPS: @PTEST_DEPS@ ./main.c
DEPS: @PTEST_DEPS@ @PTEST_DIR@/main2.c DEPS: @PTEST_DEPS@ ./main2.c
DEPS: @PTEST_DEPS@ @PTEST_DIR@/main3.c DEPS: @PTEST_DEPS@ ./main3.c
DEPS: @PTEST_DEPS@ @PTEST_DIR@/make-wrapper.c DEPS: @PTEST_DEPS@ ./make-wrapper.c
DEPS: @PTEST_DEPS@ @PTEST_DIR@/make-wrapper2.c DEPS: @PTEST_DEPS@ ./make-wrapper2.c
DEPS: @PTEST_DEPS@ @PTEST_DIR@/make-wrapper3.c DEPS: @PTEST_DEPS@ ./make-wrapper3.c
DEPS: @PTEST_DEPS@ @PTEST_DIR@/build-callgraph.i DEPS: @PTEST_DEPS@ ./build-callgraph.i
DEPS: @PTEST_DEPS@ @PTEST_DIR@/recursions.i DEPS: @PTEST_DEPS@ ./recursions.i
EXECNOW: LOG heuristic_list_functions.res LOG heuristic_list_functions.err PTESTS_TESTING=1 %{bin:frama-c-script} heuristic-list-functions true true @PTEST_DEPS@ > @PTEST_RESULT@/heuristic_list_functions.res 2> @PTEST_RESULT@/heuristic_list_functions.err EXECNOW: LOG heuristic_list_functions.res LOG heuristic_list_functions.err PTESTS_TESTING=1 %{bin:frama-c-script} heuristic-list-functions true true @PTEST_DEPS@ > ./heuristic_list_functions.res 2> ./heuristic_list_functions.err
*/ */
...@@ -2,14 +2,14 @@ ...@@ -2,14 +2,14 @@
NOFRAMAC: testing frama-c-script, not frama-c itself NOFRAMAC: testing frama-c-script, not frama-c itself
COMMENT: the 'build' command cannot be tested because it requires 'glub'. COMMENT: the 'build' command cannot be tested because it requires 'glub'.
DEPS: main2.c main3.c main.c DEPS: main2.c main3.c main.c
EXECNOW: LOG list_files.res LOG list_files.err PTESTS_TESTING=1 %{bin:frama-c-script} list-files %{dep:@PTEST_DIR@/list_files.json} > @PTEST_RESULT@/list_files.res 2> @PTEST_RESULT@/list_files.err EXECNOW: LOG list_files.res LOG list_files.err PTESTS_TESTING=1 %{bin:frama-c-script} list-files %{dep:./list_files.json} > ./list_files.res 2> ./list_files.err
DEPS: for-find-fun2.c for-find-fun.c for-list-functions.c for-list-functions.h for-list-functions2.h main2.c main3.c main.c make-wrapper2.c make-wrapper3.c make-wrapper.c DEPS: for-find-fun2.c for-find-fun.c for-list-functions.c for-list-functions.h for-list-functions2.h main2.c main3.c main.c make-wrapper2.c make-wrapper3.c make-wrapper.c
EXECNOW: LOG find_fun1.res LOG find_fun1.err PTESTS_TESTING=1 %{bin:frama-c-script} find-fun main2 @PTEST_DIR@ > @PTEST_RESULT@/find_fun1.res 2> @PTEST_RESULT@/find_fun1.err EXECNOW: LOG find_fun1.res LOG find_fun1.err PTESTS_TESTING=1 %{bin:frama-c-script} find-fun main2 ./ > ./find_fun1.res 2> ./find_fun1.err
EXECNOW: LOG find_fun2.res LOG find_fun2.err PTESTS_TESTING=1 %{bin:frama-c-script} find-fun main3 @PTEST_DIR@ > @PTEST_RESULT@/find_fun2.res 2> @PTEST_RESULT@/find_fun2.err EXECNOW: LOG find_fun2.res LOG find_fun2.err PTESTS_TESTING=1 %{bin:frama-c-script} find-fun main3 ./ > ./find_fun2.res 2> ./find_fun2.err
EXECNOW: LOG find_fun3.res LOG find_fun3.err PTESTS_TESTING=1 %{bin:frama-c-script} find-fun false_positive @PTEST_DIR@ > @PTEST_RESULT@/find_fun3.res 2> @PTEST_RESULT@/find_fun3.err EXECNOW: LOG find_fun3.res LOG find_fun3.err PTESTS_TESTING=1 %{bin:frama-c-script} find-fun false_positive ./ > ./find_fun3.res 2> ./find_fun3.err
DEPS: DEPS:
EXECNOW: LOG list_functions.res LOG list_functions.err PTESTS_TESTING=1 %{bin:frama-c-script} list-functions %{dep:@PTEST_DIR@/for-find-fun2.c} %{dep:@PTEST_DIR@/for-list-functions.c} > @PTEST_RESULT@/list_functions.res 2> @PTEST_RESULT@/list_functions.err EXECNOW: LOG list_functions.res LOG list_functions.err PTESTS_TESTING=1 %{bin:frama-c-script} list-functions %{dep:./for-find-fun2.c} %{dep:./for-list-functions.c} > ./list_functions.res 2> ./list_functions.err
EXECNOW: LOG list_functions2.res LOG list_functions2.err LOG list_functions2.json PTESTS_TESTING=1 %{bin:frama-c-script} list-functions %{dep:@PTEST_DIR@/for-find-fun2.c} %{dep:@PTEST_DIR@/for-list-functions.c} -list-functions-declarations -list-functions-output @PTEST_RESULT@/list_functions2.json -list-functions-debug 1 > @PTEST_RESULT@/list_functions2.res 2> @PTEST_RESULT@/list_functions2.err EXECNOW: LOG list_functions2.res LOG list_functions2.err LOG list_functions2.json PTESTS_TESTING=1 %{bin:frama-c-script} list-functions %{dep:./for-find-fun2.c} %{dep:./for-list-functions.c} -list-functions-declarations -list-functions-output ./list_functions2.json -list-functions-debug 1 > ./list_functions2.res 2> ./list_functions2.err
*/ */
......
...@@ -3,7 +3,7 @@ MACRO: RM_TMP_DIR rm -rf make-for-make-wrapper.parse make-for-make-wrapper.eva ...@@ -3,7 +3,7 @@ MACRO: RM_TMP_DIR rm -rf make-for-make-wrapper.parse make-for-make-wrapper.eva
NOFRAMAC: testing frama-c-script NOFRAMAC: testing frama-c-script
COMMENT: in case of errors, remove the 'grep' part to get the full output COMMENT: in case of errors, remove the 'grep' part to get the full output
PLUGIN: eva,from,inout,metrics,nonterm,report,scope,variadic PLUGIN: eva,from,inout,metrics,nonterm,report,scope,variadic
EXECNOW: LOG make-wrapper.res LOG make-wrapper.err (cd @PTEST_DIR@ && touch %{dep:make-wrapper2.c} && touch %{dep:make-wrapper3.c} && @RM_TMP_DIR@ && FRAMAC='%{bin:frama-c} @PTEST_DEFAULT_OPTIONS@ @PTEST_LOAD_OPTIONS@' PTESTS_TESTING=1 %{bin:frama-c-script} make-wrapper --make-dir . -f %{dep:make-for-make-wrapper.mk} | grep -A999999 "make-wrapper recommendations" && @RM_TMP_DIR@) > @PTEST_RESULT@/make-wrapper.res 2> @PTEST_RESULT@/make-wrapper.err EXECNOW: LOG make-wrapper.res LOG make-wrapper.err (cd ./ && touch %{dep:make-wrapper2.c} && touch %{dep:make-wrapper3.c} && @RM_TMP_DIR@ && FRAMAC='%{bin:frama-c} @PTEST_DEFAULT_OPTIONS@ @PTEST_LOAD_OPTIONS@' PTESTS_TESTING=1 %{bin:frama-c-script} make-wrapper --make-dir . -f %{dep:make-for-make-wrapper.mk} | grep -A999999 "make-wrapper recommendations" && @RM_TMP_DIR@) > ./make-wrapper.res 2> ./make-wrapper.err
*/ */
......
/* run.config /* run.config
NOFRAMAC: testing frama-c-script, not frama-c itself NOFRAMAC: testing frama-c-script, not frama-c itself
EXECNOW: LOG recursions.res LOG recursions.err PTESTS_TESTING=1 %{bin:frama-c-script} heuristic-detect-recursion @PTEST_FILE@ > @PTEST_RESULT@/recursions.res 2> @PTEST_RESULT@/recursions.err EXECNOW: LOG recursions.res LOG recursions.err PTESTS_TESTING=1 %{bin:frama-c-script} heuristic-detect-recursion @PTEST_FILE@ > ./recursions.res 2> ./recursions.err
*/ */
volatile int v; volatile int v;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment