[Bug other/106782] dump_printf_loc has incorrect format attribute
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106782 --- Comment #9 from CVS Commits --- The releases/gcc-12 branch has been updated by Tamar Christina : https://gcc.gnu.org/g:e69134e12551a4289292e3955525f84d99773d31 commit r12-8736-ge69134e12551a4289292e3955525f84d99773d31 Author: Tamar Christina Date: Thu Sep 1 22:04:57 2022 +0100 AArch64: Fix bootstrap failure due to dump_printf_loc format attribute uses [PR106782] This fixes the bootstrap failure on AArch64 following -Werror=format by correcting the print format modifiers in the backend. gcc/ChangeLog: PR other/106782 * config/aarch64/aarch64.cc (aarch64_vector_costs::prefer_unrolled_loop): Replace %u with HOST_WIDE_INT_PRINT_UNSIGNED. (cherry picked from commit b98c5262d02c13cdbbf3b985859b436adec94d90)
[Bug other/106782] dump_printf_loc has incorrect format attribute
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106782 --- Comment #8 from CVS Commits --- The master branch has been updated by Tamar Christina : https://gcc.gnu.org/g:b98c5262d02c13cdbbf3b985859b436adec94d90 commit r13-2357-gb98c5262d02c13cdbbf3b985859b436adec94d90 Author: Tamar Christina Date: Thu Sep 1 22:04:57 2022 +0100 AArch64: Fix bootstrap failure due to dump_printf_loc format attribute uses [PR106782] This fixes the bootstrap failure on AArch64 following -Werror=format by correcting the print format modifiers in the backend. gcc/ChangeLog: PR other/106782 * config/aarch64/aarch64.cc (aarch64_vector_costs::prefer_unrolled_loop): Replace %u with HOST_WIDE_INT_PRINT_UNSIGNED.
[Bug other/106782] dump_printf_loc has incorrect format attribute
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106782 Jakub Jelinek changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|--- |FIXED --- Comment #7 from Jakub Jelinek --- Fixed now.
[Bug other/106782] dump_printf_loc has incorrect format attribute
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106782 --- Comment #6 from CVS Commits --- The releases/gcc-12 branch has been updated by Jakub Jelinek : https://gcc.gnu.org/g:f9593025a290c68c0916dc6fa569eb38eda00535 commit r12-8734-gf9593025a290c68c0916dc6fa569eb38eda00535 Author: Jakub Jelinek Date: Thu Sep 1 11:07:44 2022 +0200 Fix up dump_printf_loc format attribute and adjust uses [PR106782] As discussed on IRC, the r13-2299-g68c61c2daa1f bug only got missed because dump_printf_loc had incorrect format attribute and therefore almost no -Wformat=* checking was performed on it. 3, 0 are suitable for function with (whatever, whatever, const char *, va_list) arguments, not for (whatever, whatever, const char *, ...), that one should use 3, 4. There are 3 spots where the mismatch was worse though, two using %u or %d for unsigned HOST_WIDE_INT argument and one %T for enum argument (promoted to int) and this backport just fixes those spots. 2022-09-01 Jakub Jelinek PR other/106782 * tree-vect-slp.cc (vect_print_slp_tree): Use HOST_WIDE_INT_PRINT_UNSIGNED instead of %u. * tree-vect-loop.cc (vect_estimate_min_profitable_iters): Use HOST_WIDE_INT_PRINT_UNSIGNED instead of %d. * tree-vect-slp-patterns.cc (vect_pattern_validate_optab): Use %G instead of %T and STMT_VINFO_STMT (SLP_TREE_REPRESENTATIVE (node)) instead of SLP_TREE_DEF_TYPE (node). (cherry picked from commit 953e08fde44a596e4ec2491efd15cd645e1ddc48)
[Bug other/106782] dump_printf_loc has incorrect format attribute
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106782 --- Comment #5 from CVS Commits --- The master branch has been updated by Jakub Jelinek : https://gcc.gnu.org/g:953e08fde44a596e4ec2491efd15cd645e1ddc48 commit r13-2336-g953e08fde44a596e4ec2491efd15cd645e1ddc48 Author: Jakub Jelinek Date: Thu Sep 1 11:07:44 2022 +0200 Fix up dump_printf_loc format attribute and adjust uses [PR106782] As discussed on IRC, the r13-2299-g68c61c2daa1f bug only got missed because dump_printf_loc had incorrect format attribute and therefore almost no -Wformat=* checking was performed on it. 3, 0 are suitable for function with (whatever, whatever, const char *, va_list) arguments, not for (whatever, whatever, const char *, ...), that one should use 3, 4. The following patch fixes that and adjusts all spots to fix warnings. In many cases it is just through an ugly cast (for %G casts to gimple * from gassign */gphi * and the like and for %p casts to void * from slp_node etc.). There are 3 spots where the mismatch was worse though, two using %u or %d for unsigned HOST_WIDE_INT argument and one %T for enum argument (promoted to int). 2022-09-01 Jakub Jelinek PR other/106782 * dumpfile.h (dump_printf_loc): Use ATTRIBUTE_GCC_DUMP_PRINTF (3, 4) instead of ATTRIBUTE_GCC_DUMP_PRINTF (3, 0). * tree-parloops.cc (parloops_is_slp_reduction): Cast pointers to derived types of gimple to gimple * to avoid -Wformat warnings. * tree-vect-loop-manip.cc (vect_set_loop_condition, vect_update_ivs_after_vectorizer): Likewise. * tree-vect-stmts.cc (vectorizable_load): Likewise. * tree-vect-patterns.cc (vect_split_statement, vect_recog_mulhs_pattern, vect_recog_average_pattern, vect_determine_precisions_from_range, vect_determine_precisions_from_users): Likewise. * gimple-loop-versioning.cc (loop_versioning::analyze_term_using_scevs): Likewise. * tree-vect-slp.cc (vect_build_slp_tree_1): Likewise. (vect_build_slp_tree): Cast slp_tree to void * to avoid -Wformat warnings. (optimize_load_redistribution_1, vect_match_slp_patterns, vect_build_slp_instance, vect_optimize_slp_pass::materialize, vect_optimize_slp_pass::dump, vect_slp_convert_to_external, vect_slp_analyze_node_operations, vect_bb_partition_graph): Likewise. (vect_print_slp_tree): Likewise. Also use HOST_WIDE_INT_PRINT_UNSIGNED instead of %u. * tree-vect-loop.cc (vect_determine_vectorization_factor, vect_analyze_scalar_cycles_1, vect_analyze_loop_operations, vectorizable_induction, vect_transform_loop): Cast pointers to derived types of gimple to gimple * to avoid -Wformat warnings. (vect_analyze_loop_2): Cast slp_tree to void * to avoid -Wformat warnings. (vect_estimate_min_profitable_iters): Use HOST_WIDE_INT_PRINT_UNSIGNED instead of %d. * tree-vect-slp-patterns.cc (vect_pattern_validate_optab): Use %G instead of %T and STMT_VINFO_STMT (SLP_TREE_REPRESENTATIVE (node)) instead of SLP_TREE_DEF_TYPE (node).
[Bug other/106782] dump_printf_loc has incorrect format attribute
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106782 --- Comment #4 from Tamar Christina --- (In reply to Jakub Jelinek from comment #3) > Tamar, any thoughts on that? Apologies, didn't notice that earlier. That should be "Target does not support vector type for %G\n" with STMT_VINFO_STMT (SLP_TREE_REPRESENTATIVE (node)) to print the statement it can't vectorize.
[Bug other/106782] dump_printf_loc has incorrect format attribute
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106782 Jakub Jelinek changed: What|Removed |Added CC||tnfchris at gcc dot gnu.org --- Comment #3 from Jakub Jelinek --- Tamar, any thoughts on that?
[Bug other/106782] dump_printf_loc has incorrect format attribute
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106782 Jakub Jelinek changed: What|Removed |Added Status|NEW |ASSIGNED Assignee|unassigned at gcc dot gnu.org |jakub at gcc dot gnu.org --- Comment #2 from Jakub Jelinek --- Created attachment 53526 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=53526=edit gcc13-pr106782.patch I have actually fixed most of these warnings. There is one remaining though and I have no idea what to do about that: ../../gcc/tree-vect-slp-patterns.cc: In function ‘bool vect_pattern_validate_optab(internal_fn, slp_tree)’: ../../gcc/tree-vect-slp-patterns.cc:99:72: warning: format ‘%T’ expects argument of type ‘tree_node*’, but argument 4 has type ‘int’ [-Wformat=] 99 | "Target does not support vector type for %T\n", | ~^ | | | tree_node* | %d SLP_TREE_DEF_TYPE (node) is indeed an enum, while %T expects a tree. Added in r11-5969-g3ed472af6bc9f83b7a8a
[Bug other/106782] dump_printf_loc has incorrect format attribute
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106782 Richard Biener changed: What|Removed |Added Ever confirmed|0 |1 Last reconfirmed||2022-08-31 Keywords||internal-improvement Status|UNCONFIRMED |NEW --- Comment #1 from Richard Biener --- Confirmed.