aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorGCC Administrator <gccadmin@gcc.gnu.org>2022-01-16 00:16:26 +0000
committerGCC Administrator <gccadmin@gcc.gnu.org>2022-01-16 00:16:26 +0000
commit9248ee41478754b46b70f2409b85d9743ece9e72 (patch)
tree9f8b18d184d3c9ad1a384e00db82fe8ba2912af5 /gcc
parent9d6a0f388eb048f8d87f47af78f07b5ce513bfe6 (diff)
downloadgcc-9248ee41478754b46b70f2409b85d9743ece9e72.zip
gcc-9248ee41478754b46b70f2409b85d9743ece9e72.tar.gz
gcc-9248ee41478754b46b70f2409b85d9743ece9e72.tar.bz2
Daily bump.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog68
-rw-r--r--gcc/DATESTAMP2
-rw-r--r--gcc/c-family/ChangeLog10
-rw-r--r--gcc/fortran/ChangeLog9
-rw-r--r--gcc/testsuite/ChangeLog41
5 files changed, 129 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e7382a5..7f75ecac 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,71 @@
+2022-01-15 Martin Sebor <msebor@redhat.com>
+
+ PR c/63272
+ * diagnostic-spec.c (nowarn_spec_t::nowarn_spec_t): Handle
+ -Wdangling-pointer.
+ * doc/invoke.texi (-Wdangling-pointer): Document new option.
+ * gimple-ssa-warn-access.cc (pass_waccess::clone): Set new member.
+ (pass_waccess::check_pointer_uses): New function.
+ (pass_waccess::gimple_call_return_arg): New function.
+ (pass_waccess::gimple_call_return_arg_ref): New function.
+ (pass_waccess::check_call_dangling): New function.
+ (pass_waccess::check_dangling_uses): New function overloads.
+ (pass_waccess::check_dangling_stores): New function.
+ (pass_waccess::check_dangling_stores): New function.
+ (pass_waccess::m_clobbers): New data member.
+ (pass_waccess::m_func): New data member.
+ (pass_waccess::m_run_number): New data member.
+ (pass_waccess::m_check_dangling_p): New data member.
+ (pass_waccess::check_alloca): Check m_early_checks_p.
+ (pass_waccess::check_alloc_size_call): Same.
+ (pass_waccess::check_strcat): Same.
+ (pass_waccess::check_strncat): Same.
+ (pass_waccess::check_stxcpy): Same.
+ (pass_waccess::check_stxncpy): Same.
+ (pass_waccess::check_strncmp): Same.
+ (pass_waccess::check_memop_access): Same.
+ (pass_waccess::check_read_access): Same.
+ (pass_waccess::check_builtin): Call check_pointer_uses.
+ (pass_waccess::warn_invalid_pointer): Add arguments.
+ (is_auto_decl): New function.
+ (pass_waccess::check_stmt): New function.
+ (pass_waccess::check_block): Call check_stmt.
+ (pass_waccess::execute): Call check_dangling_uses,
+ check_dangling_stores. Empty m_clobbers.
+ * passes.def (pass_warn_access): Invoke pass two more times.
+
+2022-01-15 Martin Sebor <msebor@redhat.com>
+
+ PR tree-optimization/80532
+ * common.opt (-Wuse-after-free): New options.
+ * diagnostic-spec.c (nowarn_spec_t::nowarn_spec_t): Handle
+ OPT_Wreturn_local_addr and OPT_Wuse_after_free_.
+ * diagnostic-spec.h (NW_DANGLING): New enumerator.
+ * doc/invoke.texi (-Wuse-after-free): Document new option.
+ * gimple-ssa-warn-access.cc (pass_waccess::check_call): Rename...
+ (pass_waccess::check_call_access): ...to this.
+ (pass_waccess::check): Rename...
+ (pass_waccess::check_block): ...to this.
+ (pass_waccess::check_pointer_uses): New function.
+ (pass_waccess::gimple_call_return_arg): New function.
+ (pass_waccess::warn_invalid_pointer): New function.
+ (pass_waccess::check_builtin): Handle free and realloc.
+ (gimple_use_after_inval_p): New function.
+ (get_realloc_lhs): New function.
+ (maybe_warn_mismatched_realloc): New function.
+ (pointers_related_p): New function.
+ (pass_waccess::check_call): Call check_pointer_uses.
+ (pass_waccess::execute): Compute and free dominance info.
+
+2022-01-15 Uroš Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386-expand.c (ix86_expand_sse_movcc): Use
+ expand_simple_unop and expand_simple_binop instead of manually
+ constructing NOT, AND and IOR RTXes. Use vector_all_ones_operand
+ consistently. Eliminate common subexpressions and simplify code.
+ * config/i386/sse.md (<any_logic:code><MODEF:mode>3): New expander.
+ (<any_logic:code><MODEF:mode>3): Make public.
+
2022-01-14 Eric Botcazou <ebotcazou@adacore.com>
* ipa-param-manipulation.c (ipa_dump_adjusted_parameters): Dump
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index 52fea2e..20764d6 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20220115
+20220116
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index c25f86f..487be7b 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,3 +1,13 @@
+2022-01-15 Martin Sebor <msebor@redhat.com>
+
+ PR c/63272
+ * c.opt (-Wdangling-pointer): New option.
+
+2022-01-15 Martin Sebor <msebor@redhat.com>
+
+ PR tree-optimization/80532
+ * c.opt (-Wuse-after-free): New options.
+
2022-01-14 David Malcolm <dmalcolm@redhat.com>
* c-attribs.c (c_common_attribute_table): Add "tainted_args".
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 99ab840..a2585f9 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,12 @@
+2022-01-15 Harald Anlauf <anlauf@gmx.de>
+
+ PR fortran/83079
+ * target-memory.c (gfc_interpret_character): Result length is
+ in bytes and thus depends on the character kind.
+ * trans-intrinsic.c (gfc_conv_intrinsic_transfer): Compute correct
+ string length for the result of the TRANSFER intrinsic and for
+ temporaries for the different character kinds.
+
2022-01-14 Harald Anlauf <anlauf@gmx.de>
PR fortran/99256
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 3c3b3cc..e04131b 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,44 @@
+2022-01-15 Martin Sebor <msebor@redhat.com>
+
+ PR c/63272
+ * g++.dg/warn/Wfree-nonheap-object-6.C: Disable valid warnings.
+ * g++.dg/warn/ref-temp1.C: Prune expected warning.
+ * gcc.dg/uninit-pr50476.c: Expect a new warning.
+ * c-c++-common/Wdangling-pointer-2.c: New test.
+ * c-c++-common/Wdangling-pointer-3.c: New test.
+ * c-c++-common/Wdangling-pointer-4.c: New test.
+ * c-c++-common/Wdangling-pointer-5.c: New test.
+ * c-c++-common/Wdangling-pointer-6.c: New test.
+ * c-c++-common/Wdangling-pointer.c: New test.
+ * g++.dg/warn/Wdangling-pointer-2.C: New test.
+ * g++.dg/warn/Wdangling-pointer.C: New test.
+ * gcc.dg/Wdangling-pointer-2.c: New test.
+ * gcc.dg/Wdangling-pointer.c: New test.
+
+2022-01-15 Martin Sebor <msebor@redhat.com>
+
+ PR tree-optimization/80532
+ * gcc.dg/Wmismatched-dealloc-2.c: Avoid -Wuse-after-free.
+ * gcc.dg/Wmismatched-dealloc-3.c: Same.
+ * gcc.dg/analyzer/file-1.c: Prune expected warning.
+ * gcc.dg/analyzer/file-2.c: Same.
+ * gcc.dg/attr-alloc_size-6.c: Disable -Wuse-after-free.
+ * gcc.dg/attr-alloc_size-7.c: Same.
+ * c-c++-common/Wuse-after-free-2.c: New test.
+ * c-c++-common/Wuse-after-free-3.c: New test.
+ * c-c++-common/Wuse-after-free-4.c: New test.
+ * c-c++-common/Wuse-after-free-5.c: New test.
+ * c-c++-common/Wuse-after-free-6.c: New test.
+ * c-c++-common/Wuse-after-free-7.c: New test.
+ * c-c++-common/Wuse-after-free.c: New test.
+ * g++.dg/warn/Wmismatched-dealloc-3.C: New test.
+ * g++.dg/warn/Wuse-after-free.C: New test.
+
+2022-01-15 Harald Anlauf <anlauf@gmx.de>
+
+ PR fortran/83079
+ * gfortran.dg/transfer_char_kind4.f90: New test.
+
2022-01-14 David Malcolm <dmalcolm@redhat.com>
* gcc.dg/analyzer/taint-merger.c: New test.