From ec03bd4bd8364796db74f4e5184a59f9294ddb9f Mon Sep 17 00:00:00 2001 From: brolley Date: Mon, 10 Mar 2008 18:46:14 +0000 Subject: 2008-03-10 Dave Brolley PR5189 * translate.cxx (probe_or_function_needs_deref_fault_handler): New member of c_unparser. (c_unparser::emit_function): Initialize probe_or_function_needs_deref_fault_handler. Check it after the body is visited and generate a deref fault handler if necessary. (c_unparser::emit_probe): Likewise. (c_unparser::visit_print_format): Correct the compoenent type for an overridden string literal. Generate code to check that pointer arguments to %m can be dereferenced. Generate casts for printf arguments as necessary. * elaborate.cxx (typeresolution_info::visit_print_format): Desired type for conv_memory is pe_long. --- elaborate.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'elaborate.cxx') diff --git a/elaborate.cxx b/elaborate.cxx index abb4c73b..2d9fa7bc 100644 --- a/elaborate.cxx +++ b/elaborate.cxx @@ -2934,11 +2934,11 @@ typeresolution_info::visit_print_format (print_format* e) case print_format::conv_unsigned_uppercase_hex: case print_format::conv_unsigned_lowercase_hex: case print_format::conv_binary: + case print_format::conv_memory: wanted = pe_long; break; case print_format::conv_string: - case print_format::conv_memory: wanted = pe_string; break; } -- cgit