From e0b61fb56e3877c3e1f5662037bd566caff49cf7 Mon Sep 17 00:00:00 2001 From: chrchr-github <78114321+chrchr-github@users.noreply.github.com> Date: Fri, 10 Apr 2026 17:06:51 +0200 Subject: [PATCH 1/2] Update astutils.cpp --- lib/astutils.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/astutils.cpp b/lib/astutils.cpp index 39c6359823a..97b00e8784e 100644 --- a/lib/astutils.cpp +++ b/lib/astutils.cpp @@ -2120,7 +2120,8 @@ bool isWithoutSideEffects(const Token* tok, bool checkArrayAccess, bool checkRef tok = tok->astOperand2(); if (tok && tok->varId()) { const Variable* var = tok->variable(); - return var && ((!var->isClass() && (checkReference || !var->isReference())) || var->isPointer() || (checkArrayAccess ? var->isStlType() && !var->isStlType(CheckClass::stl_containers_not_const) : var->isStlType())); + return var && ((!var->isClass() && (checkReference || !var->isReference())) || var->isPointer() || + (checkArrayAccess ? var->isArray() || (var->isStlType() && !var->isStlType(CheckClass::stl_containers_not_const)) : var->isStlType())); } return true; } From 1b835657205018fe7e73e5074d2dc18401ae06cc Mon Sep 17 00:00:00 2001 From: chrchr-github <78114321+chrchr-github@users.noreply.github.com> Date: Fri, 10 Apr 2026 17:07:54 +0200 Subject: [PATCH 2/2] Update testincompletestatement.cpp --- test/testincompletestatement.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/test/testincompletestatement.cpp b/test/testincompletestatement.cpp index 7a1fbdb2dab..3d8f5d4d713 100644 --- a/test/testincompletestatement.cpp +++ b/test/testincompletestatement.cpp @@ -750,6 +750,14 @@ class TestIncompleteStatement : public TestFixture { " g();\n" "}\n"); ASSERT_EQUALS("", errout_str()); + + check("struct S;\n" // #14664 + "S* a[1];\n" + "void f() {\n" + " a[0];\n" + "}\n"); + ASSERT_EQUALS("[test.cpp:4:6]: (warning) Redundant code: Found unused array access. [constStatement]\n", + errout_str()); } void vardecl() {