baloghadamsoftware added a comment.
Hello! Thank you for addressing this problem. Are these kinds of symbols common
in real code? For me it seems very artificial. However, I agree with George, it
would be better to have this value as an analyzer option with a default value
(of 20).
Repository
baloghadamsoftware added a comment.
Can we continue the discussion here, please? We should involve Devin and/or
George as well if we cannot agree ourselves.
https://reviews.llvm.org/D35110
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
htt
baloghadamsoftware added inline comments.
Comment at: test/clang-tidy/bugprone-exception-escape.cpp:178
+void indirect_implicit() noexcept {
+ // CHECK-MESSAGES: :[[@LINE-1]]:6: warning: function 'indirect_implicit'
throws
+ implicit_int_thrower();
lebedev.ri
baloghadamsoftware updated this revision to Diff 148804.
baloghadamsoftware added a comment.
I still disagree, but I want the review to continue so I did the requested
modifications.
https://reviews.llvm.org/D35110
Files:
lib/StaticAnalyzer/Core/RangeConstraintManager.cpp
lib/StaticAnalyze
baloghadamsoftware updated this revision to Diff 116662.
baloghadamsoftware added a comment.
If both sides have concrete integers, they must be in range [min/4..max/4], if
only one, it must be in range [min/2..max/2].
https://reviews.llvm.org/D35109
Files:
lib/StaticAnalyzer/Core/SimpleSValB
baloghadamsoftware added a comment.
It seems that Artem's suggestion is not enough (or I misunderstood it). So two
options remain: either we drop this and revert to the local solution in the
Iterator Checkers or we extend the type when rearranging the comparison. Which
way to go?
https://revi
baloghadamsoftware added a comment.
I think that the acceptable false positive rate of a compiler warning is much
lower than that of a Tidy check. So I understand that the fronted patch will
not handle the indirect cases (which are the most important in my opinion) or
the cases where there are
baloghadamsoftware added a comment.
I am considering to restrict the assumptions to nodes marked as interesting and
to the location of the bug. However, I have difficulties with the latter, it
seems that the bug location itself is not part of the bug path.
https://reviews.llvm.org/D34508
__
baloghadamsoftware added a comment.
I tried to extend the type to avoid overflow scenarios. Unfortunately, this
breaks essential calculations based on the overflow scenarios (e.g.
ProgramSate::assumeInbound()). So I see no other option than to abandon this
patch and return to the local solution
baloghadamsoftware created this revision.
When dumping SymIntExpr or IntSymExpr signed numbers are dumped as unsigned,
thus their two's complement is displayed. This small patch fixes this.
https://reviews.llvm.org/D39048
Files:
lib/StaticAnalyzer/Core/SymbolManager.cpp
test/Analysis/expr-
baloghadamsoftware updated this revision to Diff 119576.
baloghadamsoftware added a comment.
Herald added a subscriber: szepet.
I think it is the final attempt. If Symbols are different, the type is
extended, so we store a correct (but extended) range. However, if the Symbols
are the same, we do
baloghadamsoftware created this revision.
Herald added subscribers: mgorny, srhines.
A possible error is to write ``malloc(strlen(s+1))`` instead of
``malloc(strlen(s)+1)``. Unfortunately the former is also valid syntactically,
but allocates less memory by two bytes (if ``s`` is at least one cha
baloghadamsoftware updated this revision to Diff 120214.
baloghadamsoftware added a comment.
Updated according to comments.
https://reviews.llvm.org/D39121
Files:
clang-tidy/bugprone/BugproneTidyModule.cpp
clang-tidy/bugprone/CMakeLists.txt
clang-tidy/bugprone/MisplacedOperatorInStrlenInA
baloghadamsoftware marked 5 inline comments as done.
baloghadamsoftware added inline comments.
Comment at: clang-tidy/misc/MisplacedOperatorInStrlenInAllocCheck.cpp:30
+ Finder->addMatcher(
+ callExpr(callee(functionDecl(hasName("malloc"))),
+ hasArgument(0, a
baloghadamsoftware marked 4 inline comments as done.
baloghadamsoftware added a comment.
In https://reviews.llvm.org/D39121#902728, @alexfh wrote:
> Apart from all other comments, I think, this check would better be placed
> under bugprone/.
I moved it there.
https://reviews.llvm.org/D39121
baloghadamsoftware added a comment.
In https://reviews.llvm.org/D39121#902121, @martong wrote:
> Consider the use of a function pointer:
>
> void* malloc(int);
> int strlen(char*);
> auto fp = malloc;
> void bad_malloc(char *str) { char *c = (char *)fp(strlen(str + 1)); }
>
>
> I think, t
baloghadamsoftware added a comment.
In https://reviews.llvm.org/D39121#902145, @Eugene.Zelenko wrote:
> Same mistake could be made with new[] operator.
Yes! However, it seems that I need a new matcher for it so I would do it in a
follow-up patch.
https://reviews.llvm.org/D39121
_
baloghadamsoftware added a comment.
Of course we would like to try the Z3 for refutation, we do not dispute its
usefulness. This patch is about something really different. It extends the
range-based constraint manager in a very natural way. Is the code of the
range-based constraint manager froz
This revision was automatically updated to reflect the committed changes.
Closed by commit rC340805: [Analyzer] Iterator Checker - Part 3: Invalidation
check, first for (copy)… (authored by baloghadamsoftware, committed by ).
Repository:
rC Clang
https://reviews.llvm.org/D32747
Files:
inclu
baloghadamsoftware added a comment.
Disabled? No, that was a different thing. I have some ideas there as well, how
to solve it, but it was the rearrangement in the `SValBuilder`. This one is one
level lower, the `ConstraintManager` which only calculate the range for a
symbol where we have and a
baloghadamsoftware updated this revision to Diff 163517.
baloghadamsoftware removed a reviewer: george.karpenkov.
baloghadamsoftware added a comment.
Herald added a reviewer: george.karpenkov.
Since https://reviews.llvm.org/rL338263 fixed a bug in the cleanup phase the
tests for mismatched iterat
baloghadamsoftware updated this revision to Diff 163671.
baloghadamsoftware added a comment.
Minor changes.
https://reviews.llvm.org/D32845
Files:
include/clang/StaticAnalyzer/Checkers/Checkers.td
lib/StaticAnalyzer/Checkers/IteratorChecker.cpp
test/Analysis/Inputs/system-header-simulator
baloghadamsoftware marked 3 inline comments as done.
baloghadamsoftware added inline comments.
Comment at: include/clang/StaticAnalyzer/Checkers/Checkers.td:317
+def MismatchedIteratorChecker : Checker<"MismatchedIterator">,
+ HelpText<"Check for use of iterators of different
baloghadamsoftware updated this revision to Diff 163724.
baloghadamsoftware added a comment.
Comments added, functions renamed.
https://reviews.llvm.org/D32859
Files:
lib/StaticAnalyzer/Checkers/IteratorChecker.cpp
test/Analysis/mismatched-iterator.cpp
Index: test/Analysis/mismatched-itera
baloghadamsoftware updated this revision to Diff 163725.
baloghadamsoftware added a comment.
) added.
https://reviews.llvm.org/D32859
Files:
lib/StaticAnalyzer/Checkers/IteratorChecker.cpp
test/Analysis/mismatched-iterator.cpp
Index: test/Analysis/mismatched-iterator.cpp
==
baloghadamsoftware updated this revision to Diff 163736.
baloghadamsoftware added a comment.
Herald added subscribers: Szelethus, mikhail.ramalho.
Checking of constructor parameters moved to `PreCall` check.
https://reviews.llvm.org/D32860
Files:
lib/StaticAnalyzer/Checkers/IteratorChecker.cp
baloghadamsoftware updated this revision to Diff 163984.
baloghadamsoftware added a comment.
Updated according to the comments and rebased.
https://reviews.llvm.org/D32902
Files:
lib/StaticAnalyzer/Checkers/IteratorChecker.cpp
test/Analysis/Inputs/system-header-simulator-cxx.h
test/Analys
baloghadamsoftware marked an inline comment as done.
baloghadamsoftware added inline comments.
Comment at: lib/StaticAnalyzer/Checkers/IteratorChecker.cpp:1449-1464
+const CXXRecordDecl *getCXXRecordDecl(const MemRegion *Reg) {
+ QualType Type;
+ if (const auto *TVReg = Reg->ge
baloghadamsoftware updated this revision to Diff 164006.
baloghadamsoftware added a comment.
Herald added subscribers: Szelethus, mikhail.ramalho.
Rebased.
https://reviews.llvm.org/D32904
Files:
lib/StaticAnalyzer/Checkers/IteratorChecker.cpp
test/Analysis/Inputs/system-header-simulator-cxx
baloghadamsoftware added inline comments.
Herald added subscribers: Szelethus, mikhail.ramalho.
Comment at: lib/StaticAnalyzer/Checkers/IteratorChecker.cpp:1584-1588
+ auto stateFound = state->BindExpr(CE, LCtx, RetVal);
+ auto stateNotFound = state->BindExpr(CE, LCtx, SecondPa
baloghadamsoftware updated this revision to Diff 164152.
baloghadamsoftware added a comment.
Modification of the checker not needed anymore. Only tests added.
https://reviews.llvm.org/D32906
Files:
test/Analysis/iterator-range.cpp
test/Analysis/mismatched-iterator.cpp
Index: test/Analysis
baloghadamsoftware added a comment.
Your are right, it is not necessary anymore. Should I keep this patch to add
the tests only or should I abandon it completely?
https://reviews.llvm.org/D32906
___
cfe-commits mailing list
cfe-commits@lists.llvm.o
This revision was automatically updated to reflect the committed changes.
baloghadamsoftware marked an inline comment as done.
Closed by commit rC341790: [Analyzer] Iterator Checker - Part 4: Mismatched
iterator checker for function… (authored by baloghadamsoftware, committed by ).
Changed prior
This revision was automatically updated to reflect the committed changes.
Closed by commit rC341791: [Analyzer] Iterator Checker - Part 5: Move
Assignment of Containers (authored by baloghadamsoftware, committed by ).
Changed prior to commit:
https://reviews.llvm.org/D32859?vs=163725&id=164632#
This revision was automatically updated to reflect the committed changes.
Closed by commit rC341792: [Analyzer] Iterator Checker - Part 6: Mismatched
iterator checker for… (authored by baloghadamsoftware, committed by ).
Changed prior to commit:
https://reviews.llvm.org/D32860?vs=163736&id=1646
This revision was automatically updated to reflect the committed changes.
baloghadamsoftware marked an inline comment as done.
Closed by commit rL341793: [Analyzer] Iterator Checker - Part 7: Support for
push and pop operations (authored by baloghadamsoftware, committed by ).
Herald added a subscr
This revision was automatically updated to reflect the committed changes.
Closed by commit rL341794: [Analyzer] Iterator Checker - Part 8: Support for
assign, clear, insert… (authored by baloghadamsoftware, committed by ).
Herald added a subscriber: llvm-commits.
Changed prior to commit:
https:
This revision was automatically updated to reflect the committed changes.
Closed by commit rL337678: [Analyzer] Quick Fix for exponential execution time
when simpilifying complex… (authored by baloghadamsoftware, committed by ).
Herald added a subscriber: llvm-commits.
Changed prior to commit:
baloghadamsoftware added a comment.
"Actually supporting such this-argument construction contexts would address the
FIXME that we've added in https://reviews.llvm.org/D32642 but this patch
doesn't go that far."
Maybe a FIXME here so we do not forget to continue it in the future?
https://revie
baloghadamsoftware added a comment.
How much different is a correct `this`-argument construction context from real
argument construction contexts?
https://reviews.llvm.org/D49627
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.
This revision was automatically updated to reflect the committed changes.
Closed by commit rC338234: [Analyzer] Iterator Checker Hotfix: Defer deletion
of container data until its… (authored by baloghadamsoftware, committed by ).
Changed prior to commit:
https://reviews.llvm.org/D48427?vs=15406
baloghadamsoftware marked an inline comment as not done.
baloghadamsoftware added inline comments.
Comment at: lib/StaticAnalyzer/Checkers/IteratorChecker.cpp:605
+ if (Pos && !Pos->isValid()) {
+// If I do not put a tag here, some invalidation tests will fail
+static Ch
baloghadamsoftware updated this revision to Diff 158479.
baloghadamsoftware added a comment.
Pre-statement check of `CXXOperatorCallExpr` merged into pre-call check.
https://reviews.llvm.org/D32747
Files:
include/clang/StaticAnalyzer/Checkers/Checkers.td
lib/StaticAnalyzer/Checkers/Iterator
baloghadamsoftware added inline comments.
Comment at: lib/StaticAnalyzer/Checkers/IteratorChecker.cpp:605
+ if (Pos && !Pos->isValid()) {
+// If I do not put a tag here, some invalidation tests will fail
+static CheckerProgramPointTag Tag("InvalidatedIteratorChecker",
--
baloghadamsoftware updated this revision to Diff 158701.
baloghadamsoftware added a comment.
Copying iterator position for the `this` pointer of C++ operators from the
caller's context to the callee's context is no longer needed.
https://reviews.llvm.org/D32747
Files:
include/clang/StaticAna
baloghadamsoftware added a comment.
Yes, it is working now without the hack.
https://reviews.llvm.org/D32747
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
baloghadamsoftware created this revision.
baloghadamsoftware added a reviewer: NoQ.
Herald added subscribers: mikhail.ramalho, a.sidorin, dkrupp, rnkovacs, szepet,
whisperity.
Herald added a reviewer: george.karpenkov.
Currently, the default (range-based) constrain manager supports symbolic
expr
baloghadamsoftware updated this revision to Diff 159012.
baloghadamsoftware edited the summary of this revision.
baloghadamsoftware added a comment.
Completely rewritten: works correctly for modular arithmetic (multiplication),
works correctly for truncation (division), only uses integers, no flo
baloghadamsoftware added inline comments.
Comment at: lib/StaticAnalyzer/Checkers/IteratorChecker.cpp:388
+// template parameters for different containers. So we can safely
+// assume that passing iterators of different containers as arguments
+// whose type replaces
baloghadamsoftware added a comment.
In https://reviews.llvm.org/D32859##inline-360206, @NoQ wrote:
> I do not immediately understand what is this useful for. At least tests don't
> look like they make use of these offset manipulations(?)
>
> Without full understanding, i wonder: when we overwrit
baloghadamsoftware added a comment.
https://reviews.llvm.org/D32747
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
baloghadamsoftware created this revision.
Herald added a subscriber: mgorny.
Finds functions which should not throw exceptions: Destructors, move
constructors, move assignment operators, the main() function, swap() functions,
functions marked with throw() or noexcept and functions given as optio
baloghadamsoftware added a comment.
Supersedes https://reviews.llvm.org/D32350
https://reviews.llvm.org/D33537
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
baloghadamsoftware abandoned this revision.
baloghadamsoftware added a comment.
Superseded by https://reviews.llvm.org/D33537
https://reviews.llvm.org/D32350
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailm
baloghadamsoftware added a comment.
Any comments regarding the last changes?
https://reviews.llvm.org/D32592
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
baloghadamsoftware updated this revision to Diff 100239.
baloghadamsoftware added a comment.
Comments added and fixed.
https://reviews.llvm.org/D32592
Files:
include/clang/StaticAnalyzer/Checkers/Checkers.td
lib/StaticAnalyzer/Checkers/CMakeLists.txt
lib/StaticAnalyzer/Checkers/IteratorCh
baloghadamsoftware updated this revision to Diff 100369.
baloghadamsoftware added a comment.
Docs fixed according to the comments.
https://reviews.llvm.org/D33537
Files:
clang-tidy/misc/CMakeLists.txt
clang-tidy/misc/ExceptionEscapeCheck.cpp
clang-tidy/misc/ExceptionEscapeCheck.h
clang-
baloghadamsoftware added a comment.
In https://reviews.llvm.org/D33537#764834, @Prazek wrote:
> How is that compared to https://reviews.llvm.org/D19201 and the clang patch
> mentioned in this patch?
Actually, this check does much more. It does not only check for noexcept (and
throw()) functio
baloghadamsoftware updated this revision to Diff 100374.
baloghadamsoftware added a comment.
Check added to the Release Notes.
https://reviews.llvm.org/D33537
Files:
clang-tidy/misc/CMakeLists.txt
clang-tidy/misc/ExceptionEscapeCheck.cpp
clang-tidy/misc/ExceptionEscapeCheck.h
clang-tidy
baloghadamsoftware updated this revision to Diff 100382.
baloghadamsoftware added a comment.
Ignoring bad_alloc.
https://reviews.llvm.org/D33537
Files:
clang-tidy/misc/CMakeLists.txt
clang-tidy/misc/ExceptionEscapeCheck.cpp
clang-tidy/misc/ExceptionEscapeCheck.h
clang-tidy/misc/MiscTidy
baloghadamsoftware updated this revision to Diff 100848.
baloghadamsoftware added a comment.
Rebased to (committed) Part1 (https://reviews.llvm.org/rL304160) and updated
according to comments.
https://reviews.llvm.org/D32642
Files:
lib/StaticAnalyzer/Checkers/IteratorChecker.cpp
test/Analy
baloghadamsoftware added a comment.
The matcher in https://reviews.llvm.org/D33537 could be reused here as well.
Maybe I should make it common, but it is more complex than any of the common
matchers.
Repository:
rL LLVM
https://reviews.llvm.org/D31370
baloghadamsoftware added a comment.
There is a patch (https://reviews.llvm.org/D33537) for a check which is a
superset of this: It does not only check for noexcept (and throw()) functions,
but also for destructors, move constructors, move assignments, the main()
function, swap() functions and a
baloghadamsoftware added a comment.
In https://reviews.llvm.org/D33537#770264, @aaron.ballman wrote:
> I think we should try to get as much of this functionality in
> https://reviews.llvm.org/D3 as possible; there is a considerable amount
> of overlap between that functionality and this fun
baloghadamsoftware added a comment.
Any progress in the review?
https://reviews.llvm.org/D32642
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
baloghadamsoftware added a comment.
I tried `SValBuilder::evalBinOp()` first but it did not help too much. It could
decide only if I compared the same conjured symbols or different ones, but
nothing more. It always gave me `UnknownVal`. Even if comparing ${conj_X} ==
${conj_X} + n where n was a
baloghadamsoftware updated this revision to Diff 103568.
baloghadamsoftware added a comment.
Minor fixes according to the comments.
https://reviews.llvm.org/D32642
Files:
lib/StaticAnalyzer/Checkers/IteratorChecker.cpp
test/Analysis/Inputs/system-header-simulator-cxx.h
test/Analysis/diagn
baloghadamsoftware added a comment.
> I'm sure that simplification `(($x + N) + M) ~> ($x + (M + N))` is already
> working in `SValBuilder`.
No, it is unfortunately not working: I tried to increase `${conj_X}` by `1`,
then again by `1`, and I got symbolic expression `(${conj_X}+1)+1)`.
https:
baloghadamsoftware updated this revision to Diff 103728.
baloghadamsoftware added a comment.
`SymbolManager::getSymIntExpr()` replaced by `SValBuilder::evalBinOp()`,
function `compact()` eliminated.
https://reviews.llvm.org/D32642
Files:
lib/StaticAnalyzer/Checkers/IteratorChecker.cpp
test
baloghadamsoftware added a comment.
Now I can improve `SValBuilder` to compare `{conj_X}+n` to `conj_X}+m`, but I
am not sure if it helps to simplify `compare()` much. How to handle cases where
I have to compare `{conj_X}+n` to `{conj_Y}+m`, an we have a range `[k..k]` for
`{conj_X}-{conj_Y}` i
baloghadamsoftware added a comment.
Herald added subscribers: a.sidorin, rnkovacs, szepet.
This one is not blocked anymore since I removed the dependency.
https://reviews.llvm.org/D35110
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http:/
baloghadamsoftware added a comment.
In https://reviews.llvm.org/D35109#956075, @NoQ wrote:
> I'm totally fine with assuming the MAX/4 constraint on checker side -
> extension math would still be better than the MAX/4 pattern-matching in core
> because extension math should be more useful on its
baloghadamsoftware added a comment.
In https://reviews.llvm.org/D35110#968284, @baloghadamsoftware wrote:
> This one is not blocked anymore since I removed the dependency.
But I have to modify the test cases...
https://reviews.llvm.org/D35110
___
baloghadamsoftware added a comment.
In https://reviews.llvm.org/D35109#969109, @NoQ wrote:
> I guess it'd be an `-analyzer-config` flag. You can add it to the
> `AnalyzerOptions` object, which has access to these flags and can be accessed
> from `AnalysisManager`.
OK, I can do that. BUt how s
baloghadamsoftware added a comment.
Strange, but modifying the tests from `m n` to `m - n 0`
does not help. The statement `if (m - n 0)` does not store a range
for `m - n` in the constraint manager. With the other patch which automatically
changes `m n` to `m - n 0` the range is stored
a
baloghadamsoftware created this revision.
baloghadamsoftware added reviewers: NoQ, dcoughlin.
Herald added subscribers: a.sidorin, szepet.
This patch is a "light" version of https://reviews.llvm.org/D35109:
Since the range-based constraint manager (default) is weak in handling
comparisons where
baloghadamsoftware added a comment.
In https://reviews.llvm.org/D35110#972430, @NoQ wrote:
> In https://reviews.llvm.org/D35110#969782, @baloghadamsoftware wrote:
>
> > Strange, but modifying the tests from `m n` to `m - n
> > 0` does not help. The statement `if (m - n 0)` does not store a
baloghadamsoftware updated this revision to Diff 129441.
baloghadamsoftware added a comment.
Updated to be based upon https://reviews.llvm.org/D41938.
https://reviews.llvm.org/D35110
Files:
lib/StaticAnalyzer/Core/RangeConstraintManager.cpp
test/Analysis/constraint_manager_negate_difference
baloghadamsoftware updated this revision to Diff 129445.
baloghadamsoftware added a comment.
Updated to be based upon https://reviews.llvm.org/D41938 and
https://reviews.llvm.org/D35110.
https://reviews.llvm.org/D32642
Files:
lib/StaticAnalyzer/Checkers/IteratorChecker.cpp
test/Analysis/In
baloghadamsoftware added a comment.
Hi,
Thank you for the patch.
It seems that the new approach still does not solve a problem with anonymous
structures in typedefs.In C++ a copy constructor is automatically generated,
and its parameter is the anonymous structure itself. This triggers caching
baloghadamsoftware added a comment.
By moving the code that sets the type name of an anoynmous declaration from
Import(Decl*) to ImportDefinition(RecordDecl*, RecordDecl*,
ImportDefinitionKind) (and the same for Enum) we will not crash upon importing
typedefs containing anonymous strcutures. Th
baloghadamsoftware added inline comments.
Comment at: lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp:330
+ nonloc::ConcreteInt(Max), SVB.getConditionType());
+ if (auto DV = IsCappedFromAbove.getAs()) {
+if (State->assume(*DV, false))
geo
baloghadamsoftware updated this revision to Diff 138954.
baloghadamsoftware added a comment.
Updated according to the comments.
https://reviews.llvm.org/D41938
Files:
include/clang/StaticAnalyzer/Core/AnalyzerOptions.h
lib/StaticAnalyzer/Core/AnalyzerOptions.cpp
lib/StaticAnalyzer/Core/Si
baloghadamsoftware marked 12 inline comments as done.
baloghadamsoftware added inline comments.
Comment at: lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp:326
+
+ llvm::APSInt Max = AT.getMaxValue() >> 2; // Divide by 4.
+ SVal IsCappedFromAbove =
george.karpenk
baloghadamsoftware accepted this revision.
baloghadamsoftware added a comment.
Oh, it slipped through somehow. Thanks for fixing this!
Repository:
rC Clang
https://reviews.llvm.org/D47417
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
ht
baloghadamsoftware added a comment.
Sorry, Artem, but it does not work this way. Even if the symbolic expressions
are constrained to `[-MAX/4..MAX/4]`, after rearrangement the difference still
uses the whole range, thus `m>n` becomes `m-n>0`, where in the false branch the
range for `m-n` is `[M
baloghadamsoftware added a comment.
Maybe if we could apply somehow a `[-MAX/2..MAX/2]` constraint to both sides of
the rearranged equality in SimpleSValBuilder.
https://reviews.llvm.org/D35110
___
cfe-commits mailing list
cfe-commits@lists.llvm.or
baloghadamsoftware added a comment.
Did the tests execute? I am not sure. First problem is the the container may
become dead before the iterator, so its `Begin` and `End` symbols may be
inaccessible. This is easy to solve by marking the container of the iterator as
live. However, there is a sec
baloghadamsoftware added a comment.
In https://reviews.llvm.org/D35110#1119496, @NoQ wrote:
> Which expressions are constrained? Why does the difference use the whole
> range? Is it something that could have been fixed by the "enforce that
> separately" part in my old comment:
>
> > iterator-re
baloghadamsoftware added a comment.
Herald added a subscriber: mikhail.ramalho.
Any idea how to proceed?
https://reviews.llvm.org/D35110
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commi
This revision was automatically updated to reflect the committed changes.
Closed by commit rC334804: [ASTImporter] Corrected diagnostic client handling
in tests. (authored by baloghadamsoftware, committed by ).
Changed prior to commit:
https://reviews.llvm.org/D47445?vs=149412&id=151459#toc
Re
baloghadamsoftware updated this revision to Diff 151666.
baloghadamsoftware added a comment.
New warning message, more detailed docs.
https://reviews.llvm.org/D33537
Files:
clang-tidy/bugprone/BugproneTidyModule.cpp
clang-tidy/bugprone/CMakeLists.txt
clang-tidy/bugprone/ExceptionEscapeChe
baloghadamsoftware updated this revision to Diff 151720.
baloghadamsoftware added a comment.
-(-2^n) == -2^n
https://reviews.llvm.org/D35110
Files:
include/clang/StaticAnalyzer/Core/PathSensitive/RangedConstraintManager.h
lib/StaticAnalyzer/Core/RangeConstraintManager.cpp
test/Analysis/co
baloghadamsoftware added a comment.
I added extra assertion into the test for the difference. Interestingly, it
also works if I assert `n-m` is in the range instead of `m-n`.
https://reviews.llvm.org/D35110
___
cfe-commits mailing list
cfe-commits@
baloghadamsoftware added inline comments.
Comment at: test/clang-tidy/bugprone-exception-escape.cpp:178
+void indirect_implicit() noexcept {
+ // CHECK-MESSAGES: :[[@LINE-1]]:6: warning: an exception may be thrown in
function 'indirect_implicit' which should not throw exception
baloghadamsoftware updated this revision to Diff 151876.
baloghadamsoftware added a comment.
Typo fixed.
https://reviews.llvm.org/D33537
Files:
clang-tidy/bugprone/BugproneTidyModule.cpp
clang-tidy/bugprone/CMakeLists.txt
clang-tidy/bugprone/ExceptionEscapeCheck.cpp
clang-tidy/bugprone/
baloghadamsoftware added a comment.
I tested all parts of the Iterator Checkers, all tests passed.
https://reviews.llvm.org/D35110
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
baloghadamsoftware created this revision.
baloghadamsoftware added reviewers: NoQ, rnkovacs.
Herald added subscribers: mikhail.ramalho, a.sidorin, dkrupp, szepet,
xazax.hun, whisperity.
Herald added a reviewer: george.karpenkov.
https://reviews.llvm.org/D47417 is a fix for an accidentally missing
baloghadamsoftware added a comment.
I find it a strange behavior that this-expression is sometimes a pointer,
sometimes a record declaration. If references are resolved, why are pointers
not?
This is an important fix, but I wonder how many other places are in the code
where we do not handle th
baloghadamsoftware updated this revision to Diff 168787.
baloghadamsoftware added a comment.
Updated according to the comments.
https://reviews.llvm.org/D52727
Files:
clang-tidy/performance/ForRangeCopyCheck.cpp
clang-tidy/performance/ForRangeCopyCheck.h
clang-tidy/performance/Unnecessary
1 - 100 of 980 matches
Mail list logo