diff --git a/src/kernel_services/plugin_entry_points/log.ml b/src/kernel_services/plugin_entry_points/log.ml index 207b2a4271edc18c074a4072e3e54eb752364fbb..10a4ec0697ffe7c600de4fb8a291f9e07e6d8159 100644 --- a/src/kernel_services/plugin_entry_points/log.ml +++ b/src/kernel_services/plugin_entry_points/log.ml @@ -241,16 +241,8 @@ let rec echo_lines ?(prefix=false) output text p q = let add_source buffer = function | None -> () | Some src -> - (* Avoid printing ':0:' if the position is unknown. *) - if Filepath.is_empty_pos src - then Buffer.add_string buffer "<unknown location> " - else begin - Buffer.add_string buffer - (Filepath.Normalized.to_pretty_string src.Filepath.pos_path); - Buffer.add_string buffer ":" ; - Buffer.add_string buffer (string_of_int src.Filepath.pos_lnum); - Buffer.add_string buffer ": " - end + let fmt = Format.formatter_of_buffer buffer in + Format.fprintf fmt "%a: @?" Filepath.pp_pos src let add_category buffer = function | None -> () @@ -562,11 +554,6 @@ let deferred_exn = ref DNo_exn let unreported_error = "##unreported-error##" -let unreported_event { evt_category } = - match evt_category with - | None -> false - | Some s -> s = unreported_error - (* we keep track of at most one deferred exception, ordered by seriousness (internal error > user error > warning-as-error). the rationale is that an internal error might cause subsequent errors or warning, but the reverse @@ -585,44 +572,42 @@ let update_deferred_exn exn = let warn_event_as_error event = update_deferred_exn (DWarn_as_error event) -let deferred_raise ~fatal ~unreported event msg = +let deferred_raise ~fatal event msg = (* reset deferred flag. *) let () = deferred_exn := DNo_exn in let channel = new_channel event.evt_plugin in - let append = - if unreported then None else - Some - (fun fmt -> - Format.fprintf fmt " See above messages for more information.@\n") + let pp_pos fmt pos = Format.fprintf fmt "%a: " Filepath.pp_pos pos in + let pp_pos_opt = Pretty_utils.pp_opt pp_pos in + let print_event fmt = + Format.fprintf fmt "@\n%a%s" pp_pos_opt event.evt_source event.evt_message in + let append = Some print_event in let exn = if fatal then AbortFatal event.evt_plugin else AbortError event.evt_plugin in let finally = finally_raise exn in - logwithfinal finally channel ?append ~kind:event.evt_kind msg + (* change the kind to avoid re-appending 'Error' to the message *) + logwithfinal finally channel ?append ~kind:Result msg let treat_deferred_error () = match !deferred_exn with | DNo_exn -> () | DWarn_as_error event -> - let unreported = unreported_event event in let wkey = match event.evt_category with | None -> "" | Some s when s = unreported_error -> "" | Some s -> s in - deferred_raise ~fatal:false ~unreported event - "warning %s treated as deferred error." wkey + deferred_raise ~fatal:false { event with evt_kind = Error } + "Deferred error: warning as error %s:" wkey | DError event -> - let unreported = unreported_event event in - deferred_raise ~fatal:false ~unreported event - "Deferred error message was emitted during execution." + deferred_raise ~fatal:false event + "Deferred error message was emitted during execution:" | DFatal event -> - let unreported = unreported_event event in - deferred_raise ~fatal:true ~unreported event - "Deferred internal error message was emitted during execution." + deferred_raise ~fatal:true event + "Deferred internal error message was emitted during execution:" (* -------------------------------------------------------------------------- *) (* --- Messages Interface --- *) diff --git a/src/libraries/utils/filepath.ml b/src/libraries/utils/filepath.ml index 3193c18420457e03f2d4129767171a26325da0bf..ba739ec3de0d64711ee34723bd059037335c6e55 100644 --- a/src/libraries/utils/filepath.ml +++ b/src/libraries/utils/filepath.ml @@ -229,7 +229,9 @@ let rec skip_dot file_name = else file_name let pretty file_name = - if Filename.is_relative file_name then + if file_name = "" then + "<unknown location>" + else if Filename.is_relative file_name then skip_dot file_name else let path = insert cwd file_name in @@ -297,6 +299,8 @@ module Normalized = struct let pretty fmt p = if is_special_stdout p then Format.fprintf fmt "<stdout>" + else if is_empty p then + Format.fprintf fmt "<unknown location>" else Format.fprintf fmt "%s" (pretty p) let pp_abs fmt p = Format.fprintf fmt "%s" p @@ -337,7 +341,11 @@ let empty_pos = { } let pp_pos fmt pos = - Format.fprintf fmt "%a:%d" Normalized.pretty pos.pos_path pos.pos_lnum + let path = pos.pos_path in + if Normalized.(is_empty path || is_special_stdout path) then + Format.fprintf fmt "%a" Normalized.pretty path + else + Format.fprintf fmt "%a:%d" Normalized.pretty path pos.pos_lnum let is_empty_pos pos = pos == empty_pos diff --git a/src/plugins/aorai/tests/ya/oracle/floats.res.oracle b/src/plugins/aorai/tests/ya/oracle/floats.res.oracle index 960635f47e9055f7ffce2a06d2fa45b9324868fe..186a3452a787b9e653e3b0db06b7ac6fe76b3ea6 100644 --- a/src/plugins/aorai/tests/ya/oracle/floats.res.oracle +++ b/src/plugins/aorai/tests/ya/oracle/floats.res.oracle @@ -18,7 +18,7 @@ no \from part for clause 'assigns aorai_CurOpStatus, aorai_CurOperation, aorai_CurStates;'. Assuming \from \nothing so that the analysis can continue, but be aware this is probably incorrect. -[eva:alarm] <unknown location> Warning: +[eva:alarm] <unknown location>: Warning: function square_root_aux, behavior Buchi_property_behavior: postcondition got status unknown. [eva:alarm] floats.i:11: Warning: non-finite float value. diff --git a/src/plugins/aorai/tests/ya/oracle_prove/floats.res.oracle b/src/plugins/aorai/tests/ya/oracle_prove/floats.res.oracle index eda04cca2f426021910934e62da87f3285e2738f..02aa64405ee8998bf36a0656966d25223fd3f65a 100644 --- a/src/plugins/aorai/tests/ya/oracle_prove/floats.res.oracle +++ b/src/plugins/aorai/tests/ya/oracle_prove/floats.res.oracle @@ -18,7 +18,7 @@ no \from part for clause 'assigns aorai_CurOpStatus, aorai_CurOperation, aorai_CurStates;'. Assuming \from \nothing so that the analysis can continue, but be aware this is probably incorrect. -[eva:alarm] <unknown location> Warning: +[eva:alarm] <unknown location>: Warning: function square_root_aux, behavior Buchi_property_behavior: postcondition got status unknown. [eva:alarm] floats.i:11: Warning: non-finite float value. diff --git a/src/plugins/e-acsl/tests/bts/oracle/issue-framac-1119.res.oracle b/src/plugins/e-acsl/tests/bts/oracle/issue-framac-1119.res.oracle index 331bf238f1a73f1804813a41a043fe082d8b44c5..15bc5adac0dfb7366faed69d3c4a8963e50b1888 100644 --- a/src/plugins/e-acsl/tests/bts/oracle/issue-framac-1119.res.oracle +++ b/src/plugins/e-acsl/tests/bts/oracle/issue-framac-1119.res.oracle @@ -1,6 +1,6 @@ [e-acsl] beginning translation. [e-acsl] translation done in project "e-acsl". -[eva:alarm] <unknown location> Warning: +[eva:alarm] <unknown location>: Warning: function __e_acsl_assert_register_long: precondition data->values == \null || \valid(data->values) got status unknown. [eva:alarm] issue-framac-1119.c:10: Warning: diff --git a/src/plugins/server/tests/batch/wrong.t/run.t b/src/plugins/server/tests/batch/wrong.t/run.t index 88c6925e34e071de783c1bd7a5789ead06cc87e8..d54464200a2c74345fdf61a451686cd16222a3fd 100644 --- a/src/plugins/server/tests/batch/wrong.t/run.t +++ b/src/plugins/server/tests/batch/wrong.t/run.t @@ -4,7 +4,8 @@ [server] User Error: [batch] "unknown request": request "kernel.unknown" not found [server] User Error: [batch] "wrong data": request "kernel.ast.printFunction" not found [server] Output "wrong.out.json" - [server] User Error: Deferred error message was emitted during execution. See above messages for more information. + [server] Deferred error message was emitted during execution: + [batch] "unknown request": request "kernel.unknown" not found [kernel] Plug-in server aborted: invalid user input. [1] $ cat wrong.out.json diff --git a/src/plugins/wp/tests/wp/oracle/main_called.res.oracle b/src/plugins/wp/tests/wp/oracle/main_called.res.oracle index abd81c8221875403a618a45bd81066104ceb1186..111236dfd239c15a805eb219b5d6c82164ff1c46 100644 --- a/src/plugins/wp/tests/wp/oracle/main_called.res.oracle +++ b/src/plugins/wp/tests/wp/oracle/main_called.res.oracle @@ -6,5 +6,7 @@ This case is not supported yet (skipped verification). [wp] Warning: No goal generated [wp] No proof obligations -[wp] User Error: Deferred error message was emitted during execution. See above messages for more information. +[wp] Deferred error message was emitted during execution: + Main entry point function 'main' is (potentially) recursive. + This case is not supported yet (skipped verification). [kernel] Plug-in wp aborted: invalid user input. diff --git a/src/plugins/wp/tests/wp/oracle/wp_call_pre.0.res.oracle b/src/plugins/wp/tests/wp/oracle/wp_call_pre.0.res.oracle index 631d75f827d420ae2c29786b4c8fc31f18750369..261d1aeb6baaa7b717e908825bde5f31ef78b97c 100644 --- a/src/plugins/wp/tests/wp/oracle/wp_call_pre.0.res.oracle +++ b/src/plugins/wp/tests/wp/oracle/wp_call_pre.0.res.oracle @@ -16,5 +16,7 @@ Goal Instance of 'Pre-condition 'qed_ok,Rmain' in 'main'' in 'call_main' at call Prove: true. ------------------------------------------------------------ -[wp] User Error: Deferred error message was emitted during execution. See above messages for more information. +[wp] Deferred error message was emitted during execution: + Main entry point function 'main' is (potentially) recursive. + This case is not supported yet (skipped verification). [kernel] Plug-in wp aborted: invalid user input. diff --git a/src/plugins/wp/tests/wp/oracle/wp_call_pre.1.res.oracle b/src/plugins/wp/tests/wp/oracle/wp_call_pre.1.res.oracle index d9d2494634c67b2e7ba783f6f935dd48f757c76c..ae753332412fb4af1b83a593eef332cbc23dad9e 100644 --- a/src/plugins/wp/tests/wp/oracle/wp_call_pre.1.res.oracle +++ b/src/plugins/wp/tests/wp/oracle/wp_call_pre.1.res.oracle @@ -8,5 +8,7 @@ [wp] User Error: Main entry point function 'main' is (potentially) recursive. This case is not supported yet (skipped verification). [wp] No proof obligations -[wp] User Error: Deferred error message was emitted during execution. See above messages for more information. +[wp] Deferred error message was emitted during execution: + Main entry point function 'main' is (potentially) recursive. + This case is not supported yet (skipped verification). [kernel] Plug-in wp aborted: invalid user input. diff --git a/src/plugins/wp/tests/wp/oracle/wp_call_pre.2.res.oracle b/src/plugins/wp/tests/wp/oracle/wp_call_pre.2.res.oracle index 77cbd8d8902446fa20846f04d51e990a5230d8dc..80c0495c242118a3ce50d7a203fbf350c80e5a45 100644 --- a/src/plugins/wp/tests/wp/oracle/wp_call_pre.2.res.oracle +++ b/src/plugins/wp/tests/wp/oracle/wp_call_pre.2.res.oracle @@ -22,5 +22,7 @@ Goal Instance of 'Pre-condition 'qed_ok,Rf' in 'f'' in 'double_call' at initiali Prove: true. ------------------------------------------------------------ -[wp] User Error: Deferred error message was emitted during execution. See above messages for more information. +[wp] Deferred error message was emitted during execution: + Main entry point function 'main' is (potentially) recursive. + This case is not supported yet (skipped verification). [kernel] Plug-in wp aborted: invalid user input. diff --git a/src/plugins/wp/tests/wp/oracle_qualif/wp_call_pre.res.oracle b/src/plugins/wp/tests/wp/oracle_qualif/wp_call_pre.res.oracle index 51093e723505ca1f25b5b30948eeedc837ff8593..29e32ed3efc54abd2e27c79e70cc741c174d91ca 100644 --- a/src/plugins/wp/tests/wp/oracle_qualif/wp_call_pre.res.oracle +++ b/src/plugins/wp/tests/wp/oracle_qualif/wp_call_pre.res.oracle @@ -31,5 +31,7 @@ call_main 4 - 4 100% call_g 4 - 4 100% ------------------------------------------------------------ -[wp] User Error: Deferred error message was emitted during execution. See above messages for more information. +[wp] Deferred error message was emitted during execution: + Main entry point function 'main' is (potentially) recursive. + This case is not supported yet (skipped verification). [kernel] Plug-in wp aborted: invalid user input. diff --git a/src/plugins/wp/tests/wp_plugin/oracle/import_unexisting.res.oracle b/src/plugins/wp/tests/wp_plugin/oracle/import_unexisting.res.oracle index d5852e56a1789c285c609b16d212a2cf833ced2d..c124b6c0e25bcae90729d52f63b2ed845b20ea4a 100644 --- a/src/plugins/wp/tests/wp_plugin/oracle/import_unexisting.res.oracle +++ b/src/plugins/wp/tests/wp_plugin/oracle/import_unexisting.res.oracle @@ -3,5 +3,6 @@ [wp] User Error: Library Module not found [wp] Running WP plugin... [wp] No proof obligations -[wp] User Error: Deferred error message was emitted during execution. See above messages for more information. +[wp] Deferred error message was emitted during execution: + Library Module not found [kernel] Plug-in wp aborted: invalid user input. diff --git a/tests/cil/oracle/ghost_cfg.0.res.oracle b/tests/cil/oracle/ghost_cfg.0.res.oracle index f3b4277224c93fb69cbb10608120722ec1f105cf..5312ba5fb8e460f4897136f24a9dd288441426d4 100644 --- a/tests/cil/oracle/ghost_cfg.0.res.oracle +++ b/tests/cil/oracle/ghost_cfg.0.res.oracle @@ -37,5 +37,7 @@ /*@ ghost goto X; */ [kernel:ghost:bad-use] ghost_cfg.c:109: Warning: '__retres' is a non-ghost lvalue, it cannot be assigned in ghost code -[kernel] Warning: warning ghost:bad-use treated as deferred error. See above messages for more information. +[kernel] Deferred error: warning as error ghost:bad-use: + ghost_cfg.c:10: Ghost code breaks CFG starting at: + /*@ ghost goto X; */ [kernel] Frama-C aborted: invalid user input. diff --git a/tests/cil/oracle/ghost_cfg.1.res.oracle b/tests/cil/oracle/ghost_cfg.1.res.oracle index b57f33e7f5f5c58944585e439afcaaf45c51dd11..1057a06adddb17f429a2b8f456f2cfa518896936 100644 --- a/tests/cil/oracle/ghost_cfg.1.res.oracle +++ b/tests/cil/oracle/ghost_cfg.1.res.oracle @@ -1,5 +1,6 @@ [kernel] Parsing ghost_cfg.c (with preprocessing) [kernel] ghost_cfg.c:154: User Error: 'goto X;' would jump from normal statement to ghost code -[kernel] User Error: Deferred error message was emitted during execution. See above messages for more information. +[kernel] Deferred error message was emitted during execution: + ghost_cfg.c:154: 'goto X;' would jump from normal statement to ghost code [kernel] Frama-C aborted: invalid user input. diff --git a/tests/misc/oracle/debug_category.14.res.oracle b/tests/misc/oracle/debug_category.14.res.oracle index f7d982e9f13f7f2910553db3af0c8978c792bb6c..6073d7fb31cea02c9d062f6922e56b9b8316543a 100644 --- a/tests/misc/oracle/debug_category.14.res.oracle +++ b/tests/misc/oracle/debug_category.14.res.oracle @@ -3,5 +3,7 @@ [test:a] Warning: Warning A (warn-error-once: no further messages from category 'a' will be emitted) -[test] Warning: warning a treated as deferred error. See above messages for more information. +[test] Deferred error: warning as error a: + Warning A + (warn-error-once: no further messages from category 'a' will be emitted) [kernel] Plug-in test aborted: invalid user input. diff --git a/tests/misc/oracle/debug_category.15.res.oracle b/tests/misc/oracle/debug_category.15.res.oracle index b33ecc559a42c3b34bcbacc30b92a4fa569cf051..a29ab32fe7aa9d67047a378568d520af0b060890 100644 --- a/tests/misc/oracle/debug_category.15.res.oracle +++ b/tests/misc/oracle/debug_category.15.res.oracle @@ -3,5 +3,6 @@ [test:a] Warning: Warning A [test] User Error: Testing error function [test:a] Warning: Another Warning A -[test] User Error: Deferred error message was emitted during execution. See above messages for more information. +[test] Deferred error message was emitted during execution: + Testing error function [kernel] Plug-in test aborted: invalid user input. diff --git a/tests/misc/oracle/debug_category.16.res.oracle b/tests/misc/oracle/debug_category.16.res.oracle index 6857c762cdb581b0e618826742415ce950b0b6b1..29bcf983ee6ab3dd3f984e7a43306bb82b6a89ac 100644 --- a/tests/misc/oracle/debug_category.16.res.oracle +++ b/tests/misc/oracle/debug_category.16.res.oracle @@ -2,5 +2,6 @@ [test] Warning: Uncategorized warning [test:a] Warning: Warning A [test:a] Warning: Another Warning A -[test] Failure: Deferred error message was emitted during execution. +[test] Deferred error message was emitted during execution: + Silent error [kernel] Plug-in test aborted: invalid user input. diff --git a/tests/misc/oracle/debug_category.17.res.oracle b/tests/misc/oracle/debug_category.17.res.oracle index 64448bd5bd4427d7ac9cf9d550df0bb57d79048c..ebfdc38a7f55719c99e8da0d3c660a5388d97e14 100644 --- a/tests/misc/oracle/debug_category.17.res.oracle +++ b/tests/misc/oracle/debug_category.17.res.oracle @@ -3,7 +3,8 @@ [test:a] Warning: Warning A [test] Failure: Testing failure function [test:a] Warning: Another Warning A -[test] Failure: Deferred internal error message was emitted during execution. See above messages for more information. +[test] Deferred internal error message was emitted during execution: + Testing failure function [kernel] Current source was: <unknown> The full backtrace is: diff --git a/tests/misc/oracle/debug_category.8.res.oracle b/tests/misc/oracle/debug_category.8.res.oracle index 66200a611dba982af8261ffa538670a8f3908d45..54dab8c4e1c9a50812e03c57b9b59dd89092ae61 100644 --- a/tests/misc/oracle/debug_category.8.res.oracle +++ b/tests/misc/oracle/debug_category.8.res.oracle @@ -2,5 +2,6 @@ [test] Warning: Uncategorized warning [test:a] Warning: Warning A [test:a] Warning: Another Warning A -[test] Warning: warning a treated as deferred error. See above messages for more information. +[test] Deferred error: warning as error a: + Warning A [kernel] Plug-in test aborted: invalid user input. diff --git a/tests/misc/user_directories.unix.t/run.t b/tests/misc/user_directories.unix.t/run.t index d37609b9f5f9058977e87375af0f49ccf9881e91..241bc8a3abb250ca5f4408be8416b21f451a1470 100644 --- a/tests/misc/user_directories.unix.t/run.t +++ b/tests/misc/user_directories.unix.t/run.t @@ -186,7 +186,8 @@ Customized kernel var > xdg var Bad home value $ HOME= dune exec --cache=disabled -- frama-c [dirs] User Error: Failure when creating directories - [dirs] User Error: Deferred error message was emitted during execution. See above messages for more information. + [dirs] Deferred error message was emitted during execution: + Failure when creating directories [kernel] Plug-in dirs aborted: invalid user input. [1] diff --git a/tests/spec/oracle/Extend_errors.0.res.oracle b/tests/spec/oracle/Extend_errors.0.res.oracle index 1cd048aac0469548c28d44a6a86bd09efa947bf6..3a2a7d677657142048d8273c2931bf78c85f4fc2 100644 --- a/tests/spec/oracle/Extend_errors.0.res.oracle +++ b/tests/spec/oracle/Extend_errors.0.res.oracle @@ -24,11 +24,11 @@ [kernel:acsl-extension] Warning: Trying to register ACSL extension unfold reserved by frama-c. Rename this extension to avoid conflict with the kernel. Ignored extension [kernel] Triggering User Error : -[kernel] <unknown location> User Error: +[kernel] <unknown location>: User Error: Conflicts on extension named 'foo' registered by different plugins (myplugin2, myplugin1), use '\plugin::ext_name' syntax to avoid this ambiguity [kernel] Triggering Unsupported : -[kernel] <unknown location> Failure: +[kernel] <unknown location>: Failure: Unsupported clause extension named '\myplugin1::bar' [kernel] Parsing Extend_errors.c (with preprocessing) /* Generated by Frama-C */ diff --git a/tests/spec/oracle/Extend_errors.3.res.oracle b/tests/spec/oracle/Extend_errors.3.res.oracle index c12d7dc67efde446c9feaab6790b0eebbe0c0ffe..51589b3dc9993ff77318185a3469357edd6be5c9 100644 --- a/tests/spec/oracle/Extend_errors.3.res.oracle +++ b/tests/spec/oracle/Extend_errors.3.res.oracle @@ -4,5 +4,6 @@ Ignoring unregistered extension 'bar' of plug-in myplugin1 [kernel:plugin-not-loaded] Extend_errors.c:33: Warning: Ignoring extension 'bar' for unloaded plug-in unknown_plugin -[kernel] Warning: warning extension-unknown treated as deferred error. See above messages for more information. +[kernel] Deferred error: warning as error extension-unknown: + Extend_errors.c:32: Ignoring unregistered extension 'bar' of plug-in myplugin1 [kernel] Frama-C aborted: invalid user input. diff --git a/tests/spec/oracle/import_errors.2.res.oracle b/tests/spec/oracle/import_errors.2.res.oracle index 67fa872774041b03672abbc5648fda68da0896f8..6c46069e65f6e80519e78624db7b7d0741cb2843 100644 --- a/tests/spec/oracle/import_errors.2.res.oracle +++ b/tests/spec/oracle/import_errors.2.res.oracle @@ -2,5 +2,6 @@ [kernel] Parsing import_errors.c (with preprocessing) [kernel:extension-unknown] import_errors.c:40: Warning: Ignoring unregistered module importer extension 'toto' of plug-in myplugin1 -[kernel] Warning: warning extension-unknown treated as deferred error. See above messages for more information. +[kernel] Deferred error: warning as error extension-unknown: + import_errors.c:40: Ignoring unregistered module importer extension 'toto' of plug-in myplugin1 [kernel] Frama-C aborted: invalid user input. diff --git a/tests/spec/oracle/import_errors.3.res.oracle b/tests/spec/oracle/import_errors.3.res.oracle index fba570a595ecc22384efbab28e1cb41a2cc58d5a..512a05613c560f577b616371a6f59e54cb7bc545 100644 --- a/tests/spec/oracle/import_errors.3.res.oracle +++ b/tests/spec/oracle/import_errors.3.res.oracle @@ -2,5 +2,6 @@ [kernel] Parsing import_errors.c (with preprocessing) [kernel:extension-unknown] import_errors.c:44: Warning: Ignoring unregistered module importer extension 'toto' -[kernel] Warning: warning extension-unknown treated as deferred error. See above messages for more information. +[kernel] Deferred error: warning as error extension-unknown: + import_errors.c:44: Ignoring unregistered module importer extension 'toto' [kernel] Frama-C aborted: invalid user input. diff --git a/tests/syntax/oracle/cert_msc_38.1.res.oracle b/tests/syntax/oracle/cert_msc_38.1.res.oracle index 2f08c1db2a30eaf2d8c55dbf6f5afad12a153c21..6affd1fe76856012bfef0df5395fef33c949869c 100644 --- a/tests/syntax/oracle/cert_msc_38.1.res.oracle +++ b/tests/syntax/oracle/cert_msc_38.1.res.oracle @@ -1,5 +1,6 @@ [kernel] Parsing cert_msc_38.c (with preprocessing) [kernel:CERT:MSC:38] cert_msc_38.c:33: Warning: Attempt to declare errno as external identifier outside of the stdlib. It is supposed to be a macro name and cannot be declared. See CERT C coding rule MSC38-C -[kernel] Warning: warning CERT:MSC:38 treated as deferred error. See above messages for more information. +[kernel] Deferred error: warning as error CERT:MSC:38: + cert_msc_38.c:33: Attempt to declare errno as external identifier outside of the stdlib. It is supposed to be a macro name and cannot be declared. See CERT C coding rule MSC38-C [kernel] Frama-C aborted: invalid user input. diff --git a/tests/syntax/oracle/cert_msc_38.2.res.oracle b/tests/syntax/oracle/cert_msc_38.2.res.oracle index fe19cf1bb736df3777123bdfcf4b2f939dc4d1af..9053bad7caeeae6b337bb484752ede57989175fd 100644 --- a/tests/syntax/oracle/cert_msc_38.2.res.oracle +++ b/tests/syntax/oracle/cert_msc_38.2.res.oracle @@ -1,5 +1,6 @@ [kernel] Parsing cert_msc_38.c (with preprocessing) [kernel:CERT:MSC:38] cert_msc_38.c:38: Warning: Attempt to declare math_errhandling as external identifier outside of the stdlib. It is supposed to be a macro name and cannot be declared. See CERT C coding rule MSC38-C -[kernel] Warning: warning CERT:MSC:38 treated as deferred error. See above messages for more information. +[kernel] Deferred error: warning as error CERT:MSC:38: + cert_msc_38.c:38: Attempt to declare math_errhandling as external identifier outside of the stdlib. It is supposed to be a macro name and cannot be declared. See CERT C coding rule MSC38-C [kernel] Frama-C aborted: invalid user input. diff --git a/tests/syntax/oracle/cert_msc_38.7.res.oracle b/tests/syntax/oracle/cert_msc_38.7.res.oracle index e4f28025579f70f1ac20a1113b04fc604ce3d881..336bd2392f78f9646cec732a94dec7560951db3e 100644 --- a/tests/syntax/oracle/cert_msc_38.7.res.oracle +++ b/tests/syntax/oracle/cert_msc_38.7.res.oracle @@ -1,5 +1,6 @@ [kernel] Parsing cert_msc_38.c (with preprocessing) [kernel:CERT:MSC:38] cert_msc_38.c:60: Warning: setjmp is a standard macro. Its definition cannot be suppressed, see CERT C coding rules MSC38-C -[kernel] Warning: warning CERT:MSC:38 treated as deferred error. See above messages for more information. +[kernel] Deferred error: warning as error CERT:MSC:38: + cert_msc_38.c:60: setjmp is a standard macro. Its definition cannot be suppressed, see CERT C coding rules MSC38-C [kernel] Frama-C aborted: invalid user input. diff --git a/tests/syntax/oracle/ghost_cv_incompat.res.oracle b/tests/syntax/oracle/ghost_cv_incompat.res.oracle index 2e709e806388d3d2de3d29704a72a1f3579083b9..e35d4ba7926deebc91a2cc76689f766965bd0b15 100644 --- a/tests/syntax/oracle/ghost_cv_incompat.res.oracle +++ b/tests/syntax/oracle/ghost_cv_incompat.res.oracle @@ -93,5 +93,6 @@ Invalid cast of '& g_0' from 'int \ghost *' to 'int *' [kernel:ghost:bad-use] ghost_cv_incompat.i:194: Warning: Invalid cast of '& g_0' from 'int \ghost *' to 'int *' -[kernel] Warning: warning ghost:bad-use treated as deferred error. See above messages for more information. +[kernel] Deferred error: warning as error ghost:bad-use: + ghost_cv_incompat.i:27: Invalid cast of '& ng' from 'int *' to 'int \ghost *' [kernel] Frama-C aborted: invalid user input. diff --git a/tests/syntax/oracle/ghost_cv_invalid_use.res.oracle b/tests/syntax/oracle/ghost_cv_invalid_use.res.oracle index daaa1f8c77466c6e7bc074e39cac24b2e864f0e7..e0d860d893f5482d2983a33c830e67c0e03f2613 100644 --- a/tests/syntax/oracle/ghost_cv_invalid_use.res.oracle +++ b/tests/syntax/oracle/ghost_cv_invalid_use.res.oracle @@ -57,5 +57,6 @@ Call to non-ghost function from ghost code is not allowed [kernel:ghost:bad-use] ghost_cv_invalid_use.i:162: Warning: Call to non-ghost function from ghost code is not allowed -[kernel] Warning: warning ghost:bad-use treated as deferred error. See above messages for more information. +[kernel] Deferred error: warning as error ghost:bad-use: + ghost_cv_invalid_use.i:14: 'ng' is a non-ghost lvalue, it cannot be assigned in ghost code [kernel] Frama-C aborted: invalid user input. diff --git a/tests/syntax/oracle/ghost_cv_var_decl.0.res.oracle b/tests/syntax/oracle/ghost_cv_var_decl.0.res.oracle index 5a8bba7de39ff6df5c6fd0f648ddc17b38692e7e..421297c4f236614b34ab945f8ad0e5c32eecce9a 100644 --- a/tests/syntax/oracle/ghost_cv_var_decl.0.res.oracle +++ b/tests/syntax/oracle/ghost_cv_var_decl.0.res.oracle @@ -27,5 +27,6 @@ Invalid type for 'param': indirection from non-ghost to ghost [kernel:ghost:bad-use] ghost_cv_var_decl.c:166: Warning: Invalid type for 'pptrg': indirection from non-ghost to ghost -[kernel] Warning: warning ghost:bad-use treated as deferred error. See above messages for more information. +[kernel] Deferred error: warning as error ghost:bad-use: + ghost_cv_var_decl.c:152: No definition, nor assigns specification for ghost function 'decl_bad_return_type' [kernel] Frama-C aborted: invalid user input. diff --git a/tests/syntax/oracle/ghost_cv_var_decl.1.res.oracle b/tests/syntax/oracle/ghost_cv_var_decl.1.res.oracle index 67d1b6a0498df79b11293e369e1ef58b20531331..9f276448f22f09f22185eede5334a359cc20b15f 100644 --- a/tests/syntax/oracle/ghost_cv_var_decl.1.res.oracle +++ b/tests/syntax/oracle/ghost_cv_var_decl.1.res.oracle @@ -173,21 +173,21 @@ c: ghost [kernel] ghost_cv_var_decl.c:186 bar_1: normal -[kernel] :0 +[kernel] <unknown location> a: normal [kernel] ghost_cv_var_decl.c:187 bar_2: normal -[kernel] :0 +[kernel] <unknown location> a: normal -[kernel] :0 +[kernel] <unknown location> b: ghost [kernel] ghost_cv_var_decl.c:188 bar_3: normal -[kernel] :0 +[kernel] <unknown location> a: normal -[kernel] :0 +[kernel] <unknown location> b: ghost -[kernel] :0 +[kernel] <unknown location> c: ghost [kernel] ghost_cv_var_decl.c:190 pfoo_1: normal @@ -209,21 +209,21 @@ c: ghost -> normal [kernel] ghost_cv_var_decl.c:202 pbar_1: normal -[kernel] :0 +[kernel] <unknown location> a: normal -> normal [kernel] ghost_cv_var_decl.c:203 pbar_2: normal -[kernel] :0 +[kernel] <unknown location> a: normal -[kernel] :0 +[kernel] <unknown location> b: ghost -> normal [kernel] ghost_cv_var_decl.c:204 pbar_3: normal -[kernel] :0 +[kernel] <unknown location> a: normal -[kernel] :0 +[kernel] <unknown location> b: ghost -> ghost -[kernel] :0 +[kernel] <unknown location> c: ghost -> normal [kernel] ghost_cv_var_decl.c:206 afoo_1: normal @@ -243,19 +243,19 @@ b: ghost -> ghost [kernel] ghost_cv_var_decl.c:218 abar_1: normal -[kernel] :0 +[kernel] <unknown location> a: normal -> normal [kernel] ghost_cv_var_decl.c:219 abar_2: normal -[kernel] :0 +[kernel] <unknown location> a: normal -[kernel] :0 +[kernel] <unknown location> b: ghost -> ghost [kernel] ghost_cv_var_decl.c:220 abar_3: normal -[kernel] :0 +[kernel] <unknown location> a: normal -[kernel] :0 +[kernel] <unknown location> b: ghost -> ghost [kernel] ghost_cv_var_decl.c:223 reference_functions: normal diff --git a/tests/syntax/oracle/too_large_array.res.oracle b/tests/syntax/oracle/too_large_array.res.oracle index c5df2b706f22b915013c35ed485c5bfbcc44301b..d5d9b4e03f57e739e40aabb0c46b7cb9024ca115 100644 --- a/tests/syntax/oracle/too_large_array.res.oracle +++ b/tests/syntax/oracle/too_large_array.res.oracle @@ -3,5 +3,6 @@ Array length is too large. [kernel] too_large_array.i:12: Warning: Cannot represent length of array as an attribute -[kernel] Warning: warning too-large-array treated as deferred error. See above messages for more information. +[kernel] Deferred error: warning as error too-large-array: + too_large_array.i:12: Array length is too large. [kernel] Frama-C aborted: invalid user input. diff --git a/tests/syntax/oracle/very_large_integers.11.res.oracle b/tests/syntax/oracle/very_large_integers.11.res.oracle index 3270a28dd6f5ba3e83b7c88e4fb0e848db680b77..814f106104f15d6c5002db330dd3a0591e525d13 100644 --- a/tests/syntax/oracle/very_large_integers.11.res.oracle +++ b/tests/syntax/oracle/very_large_integers.11.res.oracle @@ -29,5 +29,6 @@ ---------------------------------------------------------------------------- No logical properties have been reached by the analysis. ---------------------------------------------------------------------------- -[kernel] Warning: warning annot-error treated as deferred error. See above messages for more information. +[kernel] Deferred error: warning as error annot-error: + very_large_integers.c:132: Invalid slevel directive. Ignoring code annotation [kernel] Frama-C aborted: invalid user input. diff --git a/tests/value/oracle/recursion.2.res.oracle b/tests/value/oracle/recursion.2.res.oracle index 7c23fb2f46bdc345a531f6c51dd40c56e694ed4a..ee2372e951710bca47f897e146a0bd4d82277f30 100644 --- a/tests/value/oracle/recursion.2.res.oracle +++ b/tests/value/oracle/recursion.2.res.oracle @@ -50,5 +50,8 @@ Frama_C_entropy_source; x; y; tmp; tmp_0; tmp_1 [inout] Inputs for function main_fail: Frama_C_entropy_source -[eva] Warning: warning assigns:missing treated as deferred error. See above messages for more information. +[eva] Deferred error: warning as error assigns:missing: + recursion.c:426: Recursive call to sum_nospec without assigns clause. + Generating probably incomplete assigns to interpret the call. + Try to increase the -eva-unroll-recursive-calls parameter or write a correct specification for function sum_nospec. [kernel] Plug-in eva aborted: invalid user input. diff --git a/tests/value/oracle/use_spec.0.res.oracle b/tests/value/oracle/use_spec.0.res.oracle index 942c944e4ecaa136ff3b103a4c2a9a2fa22292fb..25c745dd936f56f16d6154fba07ad8bc1de8fd6f 100644 --- a/tests/value/oracle/use_spec.0.res.oracle +++ b/tests/value/oracle/use_spec.0.res.oracle @@ -74,5 +74,6 @@ x; y Sure outputs: w; z -[eva] Warning: warning assigns:missing treated as deferred error. See above messages for more information. +[eva] Deferred error: warning as error assigns:missing: + No assigns specified for function 'f' for which option -eva-use-spec is set. Generating potentially incorrect assigns. [kernel] Plug-in eva aborted: invalid user input. diff --git a/tests/value/oracle/use_spec.1.res.oracle b/tests/value/oracle/use_spec.1.res.oracle index ceeb03a639742555ef684cd431159b8abe3c0bc6..9d2c754b2e6e34babac58ff50d3ebb39c5a04e4b 100644 --- a/tests/value/oracle/use_spec.1.res.oracle +++ b/tests/value/oracle/use_spec.1.res.oracle @@ -74,5 +74,6 @@ x; y Sure outputs: w; z -[eva] Warning: warning assigns:missing treated as deferred error. See above messages for more information. +[eva] Deferred error: warning as error assigns:missing: + No assigns specified for function 'f' for which option -eva-use-spec is set. Generating potentially incorrect assigns. [kernel] Plug-in eva aborted: invalid user input. diff --git a/tests/value/oracle/va_list.1.res.oracle b/tests/value/oracle/va_list.1.res.oracle index 3e0140e510878b7c47e20684214c596823298e18..794562d8b449ee76cf3ba291f4a5c60ee2330375 100644 --- a/tests/value/oracle/va_list.1.res.oracle +++ b/tests/value/oracle/va_list.1.res.oracle @@ -30,5 +30,6 @@ vlParameters; tmp [inout] Inputs for function main: \nothing -[eva] User Error: Deferred error message was emitted during execution. See above messages for more information. +[eva] Deferred error message was emitted during execution: + va_list.c:14: functions returning variadic arguments must be stubbed [kernel] Plug-in eva aborted: invalid user input.