From 87d1f0f241d4d3625c42b6421b75b6b263ce7f7e Mon Sep 17 00:00:00 2001 From: Dulma Churchill Date: Tue, 15 May 2018 07:15:20 -0700 Subject: [PATCH] [clang] Make an assert false into incorrect_assumption as it is happening in prod Reviewed By: mbouaziz Differential Revision: D8004365 fbshipit-source-id: 0f77515 --- infer/src/clang/cTrans.ml | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/infer/src/clang/cTrans.ml b/infer/src/clang/cTrans.ml index af5f20fca..2f4560aaf 100644 --- a/infer/src/clang/cTrans.ml +++ b/infer/src/clang/cTrans.ml @@ -163,7 +163,15 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s infer needs it to be T& *) let exec_with_glvalue_as_reference f trans_state stmt = let expr_info = - match Clang_ast_proj.get_expr_tuple stmt with Some (_, _, ei) -> ei | None -> assert false + match Clang_ast_proj.get_expr_tuple stmt with + | Some (_, _, ei) -> + ei + | None -> + let stmt_info, _ = Clang_ast_proj.get_stmt_tuple stmt in + CFrontend_config.incorrect_assumption __POS__ stmt_info.Clang_ast_t.si_source_range + "Clang_ast_proj.get_expr_tuple stmt returns None, stmt is %a" + (Pp.to_string ~f:Clang_ast_j.string_of_stmt) + stmt in let res_trans = f trans_state stmt in let return =