[llvm-bugs] [Bug 51756] New: ExprMutAnalyzer considers all NoOp-casts for Arguments as 'adding const' and not treating them as mutation
via llvm-bugs
llvm-bugs at lists.llvm.org
Sun Sep 5 08:53:17 PDT 2021
https://bugs.llvm.org/show_bug.cgi?id=51756
Bug ID: 51756
Summary: ExprMutAnalyzer considers all NoOp-casts for Arguments
as 'adding const' and not treating them as mutation
Product: clang
Version: unspecified
Hardware: All
OS: All
Status: NEW
Severity: normal
Priority: P
Component: Tooling
Assignee: unassignedclangbugs at nondot.org
Reporter: development at jonas-toth.eu
CC: llvm-bugs at lists.llvm.org
During testing of https://reviews.llvm.org/D54943 a new false positive in the
'ExprMutAnalyzer' was spotted.
Reproducer: https://godbolt.org/z/8EvsM3Eqe
Variables that are passed as arguments to a function are not considered to be
mutated, if there is an implicit cast, that is 'NoOp' (in the assumption that
this is a cast to 'const <ARGTYPE>').
Applying the '__unaligned' attribute introduces such a cast.
This results in the false analysis that this variable is not modified, where in
fact it is.
'ExprMutAnalyzer.cpp, Line 295'
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20210905/6820f575/attachment.html>
More information about the llvm-bugs
mailing list