From 4ad4ef84db0883e3b9f838f24c733b628becc2b5 Mon Sep 17 00:00:00 2001 From: Virgile Prevosto <virgile.prevosto@m4x.org> Date: Fri, 11 Feb 2022 19:17:39 +0100 Subject: [PATCH] [options] better option for having reparseable code hide -kernel-msg-key behind a proper FCLang option --- frama_Clang_option.ml | 5 +++++ tests/basic/printer.cpp | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/frama_Clang_option.ml b/frama_Clang_option.ml index 2e806ff3..6eb91e91 100644 --- a/frama_Clang_option.ml +++ b/frama_Clang_option.ml @@ -142,6 +142,11 @@ module ParseableOutput = let option_name = "-cxx-parseable-output" let help = "set up Frama-C pretty-printer to output C code that can be reparsed by Frama-C" end) +let () = + ParseableOutput.add_set_hook + (fun _ f -> + let k = Kernel.dkey_print_attrs in + if f then Kernel.add_debug_keys k else Kernel.del_debug_keys k) module C_std_headers = String( diff --git a/tests/basic/printer.cpp b/tests/basic/printer.cpp index 88e4eea8..8fc14516 100644 --- a/tests/basic/printer.cpp +++ b/tests/basic/printer.cpp @@ -1,6 +1,6 @@ /* run.config NOFRAMAC: -EXECNOW: LOG printer.res.c @frama-c@ @PTEST_FILE@ @CXX@ @MACHDEP@ -cxx-unmangling none -kernel-msg-key printer:attrs -ocode @PTEST_RESULT@/printer.res.c -print +EXECNOW: LOG printer.res.c @frama-c@ @PTEST_FILE@ @CXX@ @MACHDEP@ -cxx-unmangling none -cxx-parseable-output -ocode @PTEST_RESULT@/printer.res.c -print EXECNOW: LOG printer.res2.c @frama-c@ @CXX@ @MACHDEP@ -cxx-unmangling without-qualifier @PTEST_RESULT@/printer.res.c -ocode @PTEST_RESULT@/printer.res2.c -print */ -- GitLab