george.karpenkov accepted this revision.
george.karpenkov added a comment.
This revision is now accepted and ready to land.
Great, thanks a lot!
https://reviews.llvm.org/D49438
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llv
george.karpenkov added a comment.
> I think what pointer chasing should do, is check whether that pointer owns
> the pointee
But ownership is a convention, and it's not always deducible from a codebase.
I think of those as two separate checks, and I think we should only talk about
enabling the
george.karpenkov added a comment.
@Szelethus in any case, could you commit this change for now? I'm very keen on
seeing the results on a few of our internal projects, and it's much easier to
do that once the change is committed.
https://reviews.llvm.org/D49438
__
This revision was automatically updated to reflect the committed changes.
Closed by commit rC339079: [analyzer] Add ASTContext to CheckerManager
(authored by george.karpenkov, committed by ).
Herald added a subscriber: cfe-commits.
Changed prior to commit:
https://reviews.llvm.org/D50111?vs=158
george.karpenkov added a comment.
@rnk As discussed, would it be acceptable for you to just have empty sanitizer
runtime files in the resource directory?
Repository:
rL LLVM
https://reviews.llvm.org/D15225
___
cfe-commits mailing list
cfe-commit
george.karpenkov added a reviewer: NoQ.
george.karpenkov added a subscriber: NoQ.
george.karpenkov added a comment.
Looks reasonable. @NoQ any further comments?
https://reviews.llvm.org/D50408
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
This revision was automatically updated to reflect the committed changes.
Closed by commit rC339369: [analyzer] Fix the bug in UninitializedObjectChecker
caused by not handling… (authored by george.karpenkov, committed by ).
Herald added a subscriber: cfe-commits.
Changed prior to commit:
https
george.karpenkov requested changes to this revision.
george.karpenkov added a comment.
This revision now requires changes to proceed.
All the comments above + if anything, should use ASTMatchers.
Repository:
rC Clang
https://reviews.llvm.org/D50488
_
george.karpenkov requested changes to this revision.
george.karpenkov added a comment.
This revision now requires changes to proceed.
Overall: great! Thank you for following this direction!
However, to avoid clutter, could we put all the checker files into a separate
folder, like MPI-Checker?
george.karpenkov accepted this revision.
george.karpenkov added a comment.
This revision is now accepted and ready to land.
OK. I'm not a fan of inheritance hierarchies in general (especially if you only
have two cases) but OK if it makes your life easier.
Repository:
rC Clang
https://review
george.karpenkov requested changes to this revision.
george.karpenkov added inline comments.
This revision now requires changes to proceed.
Comment at: lib/StaticAnalyzer/Checkers/UninitializedPointee.cpp:78
+/// If for whatever reason dereferencing fails, returns with false.
+st
george.karpenkov added inline comments.
Comment at: lib/StaticAnalyzer/Checkers/CStringSyntaxChecker.cpp:164
+ // - sizeof(dst)
+ if (Append && isSizeof(LenArg, DstArg))
+return true;
george.karpenkov wrote:
> I am confused on what is happening in this bran
george.karpenkov requested changes to this revision.
george.karpenkov added inline comments.
This revision now requires changes to proceed.
Comment at: lib/StaticAnalyzer/Checkers/CStringSyntaxChecker.cpp:164
+ // - sizeof(dst)
+ if (Append && isSizeof(LenArg, DstArg))
+ret
This revision was automatically updated to reflect the committed changes.
Closed by commit rC339475: [analyzer] [NFC] [tests] Move plist-based
diagnostics tests to separate files… (authored by george.karpenkov, committed
by ).
Herald added a subscriber: cfe-commits.
Changed prior to commit:
ht
This revision was automatically updated to reflect the committed changes.
Closed by commit rC339482: [analyzer] Record nullability implications on
getting items from NSDictionary (authored by george.karpenkov, committed by ).
Herald added a subscriber: cfe-commits.
Changed prior to commit:
http
This revision was automatically updated to reflect the committed changes.
Closed by commit rC339493: [analyzer] Fix keyboard navigation for .msgNote
events (authored by george.karpenkov, committed by ).
Herald added a subscriber: cfe-commits.
Changed prior to commit:
https://reviews.llvm.org/D5
This revision was automatically updated to reflect the committed changes.
Closed by commit rC339629: [analyzer] [NFC] Introduce separate targets for
testing the analyzer: check… (authored by george.karpenkov, committed by ).
Changed prior to commit:
https://reviews.llvm.org/D50594?vs=160388&id=
This revision was automatically updated to reflect the committed changes.
Closed by commit rC339631: [analyzer] Fix UninitializedObjectChecker to not
crash on uninitialized "id"… (authored by george.karpenkov, committed
by ).
Herald added a subscriber: cfe-commits.
Changed prior to commit:
htt
george.karpenkov added subscribers: dcoughlin, bogner, NoQ, vlad.tsyrklevich.
george.karpenkov added a comment.
Yes, investigating. Will rollback if not fixed in a few hours.
Repository:
rC Clang
https://reviews.llvm.org/D50594
___
cfe-commits ma
george.karpenkov added a comment.
Should be fixed now.
Repository:
rC Clang
https://reviews.llvm.org/D50594
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
george.karpenkov added a comment.
@baloghadamsoftware @xazax.hun we've had very promising results with using Z3
for refutation so far, almost at no cost, see Mikhail's recent email on cfe-dev
(and sometimes at a negative cost!).
Do you still not want to try it first? False negatives could be add
This revision was automatically updated to reflect the committed changes.
Closed by commit rC340093: [analyzer] [NFC] Split up summary generation in
RetainCountChecker in two… (authored by george.karpenkov, committed by ).
Herald added a subscriber: cfe-commits.
Changed prior to commit:
https:/
This revision was automatically updated to reflect the committed changes.
Closed by commit rC340094: [analyzer] [NFC] Move canEval function from
RetainCountChecker to… (authored by george.karpenkov, committed by ).
Herald added a subscriber: cfe-commits.
Changed prior to commit:
https://reviews
This revision was automatically updated to reflect the committed changes.
Closed by commit rC340096: [analyzer] [NFC] Move ObjCRetainCount to
include/Analysis (authored by george.karpenkov, committed by ).
Herald added a subscriber: cfe-commits.
Changed prior to commit:
https://reviews.llvm.org
This revision was automatically updated to reflect the committed changes.
Closed by commit rC340098: [analyzer] [NFC] Minor refactoring of ISL-specific
code in RetainCountChecker (authored by george.karpenkov, committed by ).
Herald added a subscriber: cfe-commits.
Changed prior to commit:
http
george.karpenkov added inline comments.
Comment at: lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp:537
+ mutable APIMisuse BT{this, "null passed to CF memory management function"};
+ CallDescription CFRetain{"CFRetain", 1},
+ CFRelease{"CFRelease", 1
george.karpenkov requested changes to this revision.
george.karpenkov added a comment.
This revision now requires changes to proceed.
looks good apart from minor nits
Comment at: include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h:744
+ const Expr *InitWithAdjustm
This revision was automatically updated to reflect the committed changes.
Closed by commit rC340378: [analyzer] [NFC] Fix minor formatting issues in
RetainCountChecker (authored by george.karpenkov, committed by ).
Herald added a subscriber: cfe-commits.
Changed prior to commit:
https://reviews
This revision was automatically updated to reflect the committed changes.
Closed by commit rL340378: [analyzer] [NFC] Fix minor formatting issues in
RetainCountChecker (authored by george.karpenkov, committed by ).
Herald added a subscriber: llvm-commits.
Changed prior to commit:
https://review
This revision was automatically updated to reflect the committed changes.
Closed by commit rC340473: [analyzer] [NFC] Minor refactoring of
BugReporterVisitors (authored by george.karpenkov, committed by ).
Herald added a subscriber: cfe-commits.
Changed prior to commit:
https://reviews.llvm.org
This revision was automatically updated to reflect the committed changes.
Closed by commit rC340475: [analyzer] Track non-zero values in ReturnVisitor
(authored by george.karpenkov, committed by ).
Herald added a subscriber: cfe-commits.
Changed prior to commit:
https://reviews.llvm.org/D51131?
This revision was automatically updated to reflect the committed changes.
Closed by commit rC340474: [analyzer] Track the problematic subexpression in
UndefResultChecker (authored by george.karpenkov, committed by ).
Herald added a subscriber: cfe-commits.
Changed prior to commit:
https://revie
This revision was automatically updated to reflect the committed changes.
Closed by commit rC340479: [NFC] Add tags file to .gitignore (authored by
george.karpenkov, committed by ).
Herald added a subscriber: cfe-commits.
Changed prior to commit:
https://reviews.llvm.org/D50109?vs=162099&id=162
george.karpenkov reopened this revision.
george.karpenkov added a comment.
This revision is now accepted and ready to land.
This is not correct, `strlcat(dest, "mystr", sizeof(dest))` is perfectly fine,
as can be seen in many examples including strlcat man page.
Repository:
rL LLVM
https://r
george.karpenkov added a comment.
@lebedev.ri LLVM already has facilities for outputting statistics in JSON, it
seems that would be sufficient for your purposes?
I did something similar for the static analyzer in
https://reviews.llvm.org/D43131
Repository:
rL LLVM
https://reviews.llvm.org/D
george.karpenkov added a comment.
Looks good, thanks!
Repository:
rL LLVM
https://reviews.llvm.org/D46633
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
This revision was automatically updated to reflect the committed changes.
Closed by commit rC332300: [analyzer] Extend the ObjCAutoreleaseWriteChecker to
warn on captures as well (authored by george.karpenkov, committed by ).
Herald added a subscriber: cfe-commits.
Repository:
rC Clang
https:/
george.karpenkov accepted this revision.
george.karpenkov added a comment.
This revision is now accepted and ready to land.
LGTM! with stable-filename option we could even avoid the regexp.
Repository:
rC Clang
https://reviews.llvm.org/D46902
___
george.karpenkov added a comment.
I see four separate changes: s/.sys/mem one (can be committed without review),
exposing printJSONValues and consequent adding of a lock, adding a constructor
accepting a map, and fixing formatting in `printJSONValue`. All four look good
to me, but probably shou
george.karpenkov accepted this revision.
george.karpenkov added a comment.
This revision is now accepted and ready to land.
LGTM
Repository:
rL LLVM
https://reviews.llvm.org/D46937
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://li
george.karpenkov added a comment.
> Not sure yet whether i will land them right away, or wait for clang-tidy part.
I think it's better to land, as otherwise you risk merge conflicts, and
implicit conflicts (git reports no errors, but the resulting code is bad) can
be very annoying.
Repository
george.karpenkov added a comment.
Is it a fix for https://bugs.llvm.org/show_bug.cgi?id=37503 ?
Repository:
rC Clang
https://reviews.llvm.org/D47007
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/lis
george.karpenkov added a comment.
@NoQ I'm really wary of magic numbers.
- We should expose it through an analyzer-config flag. We already do so for the
budget.
- We should probably have both positive and negative tests. What scenarios
_stop_ working after the threshold is decreased? [point 1 i
george.karpenkov added inline comments.
Comment at: lib/StaticAnalyzer/Checkers/DanglingStringPointerChecker.cpp:29
+
+class DanglingStringPointerChecker : public Checker {
+ CallDescription CStrFn;
"string" is a bit ambiguous, if this checker is specifically fo
george.karpenkov added a comment.
Also we should make sure that all recursive transformations on expressions
represented as DAGs should be memoized.
Repository:
rC Clang
https://reviews.llvm.org/D47155
___
cfe-commits mailing list
cfe-commits@li
george.karpenkov requested changes to this revision.
george.karpenkov added a comment.
This revision now requires changes to proceed.
Definitely looks much cleaner, some nits inline. Can we protect against API
misuse?
Comment at: include/clang/StaticAnalyzer/Core/PathSensitive
george.karpenkov added a comment.
@NoQ we should make sure the memory is not exploding and that we don't make the
analyzer slower in other cases. Though we could commit this, and then let CI
figure out potential regressions.
Repository:
rC Clang
https://reviews.llvm.org/D47402
__
george.karpenkov added a comment.
Please resubmit with -U999 diff flag (or using arc)
Comment at:
include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h:362
+class FalsePositiveRefutationBRVisitor final
+: public BugReporterVisitorImpl {
Can
george.karpenkov added inline comments.
Comment at: test/Analysis/z3-crosscheck.c:2
+// RUN: %clang_cc1 -analyze
-analyzer-checker=core,unix.Malloc,debug.ExprInspection -analyzer-config
crosscheck-with-z3=true -verify %s
+// REQUIRES: z3
+// expected-no-diagnostics
george.karpenkov added inline comments.
Comment at: lib/StaticAnalyzer/Core/BugReporter.cpp:3153
+if (getAnalyzerOptions().shouldCrosscheckWithZ3())
+ R->addVisitor(llvm::make_unique());
+
Unless I'm mistaken, visitors are run in the order they are being
george.karpenkov added inline comments.
Comment at: include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h:496
std::unique_ptr ConstraintMgr;
+ std::unique_ptr RefutationMgr;
See the comment below, I think we should not have this manager here. J
george.karpenkov added inline comments.
Comment at: lib/StaticAnalyzer/Core/Z3ConstraintManager.cpp:1267
+
+Z3Expr Constraints = Z3Expr::fromBoolean(false);
+
george.karpenkov wrote:
> almost certainly a bug, we shouldn't default to unfeasible when the list o
george.karpenkov added a comment.
> breaking stand-alone builds as a result
That's a strong statement. Could you clarify? We have a lot of buildbots
performing standalone builds, and they are still green.
> and the likeliness of people mistakenly adding more unconditional dependencies
That's a
george.karpenkov updated this revision to Diff 117847.
https://reviews.llvm.org/D38589
Files:
utils/analyzer/SATestBuild.py
Index: utils/analyzer/SATestBuild.py
===
--- utils/analyzer/SATestBuild.py
+++ utils/analyzer/SATestBuild
george.karpenkov created this revision.
Herald added subscribers: szepet, xazax.hun.
This is especially important for updating reference results.
https://reviews.llvm.org/D38589
Files:
utils/analyzer/SATestBuild.py
Index: utils/analyzer/SATestBuild.py
This revision was automatically updated to reflect the committed changes.
Closed by commit rL314992: [Analyzer Tests] Run static analyzer integration
tests until the end, (authored by george.karpenkov).
Changed prior to commit:
https://reviews.llvm.org/D38589?vs=117847&id=117848#toc
Repository
george.karpenkov created this revision.
Herald added subscribers: szepet, xazax.hun, javed.absar.
Fixes https://bugs.llvm.org/show_bug.cgi?id=30565
@dcoughlin Any advice on how to handle different stdlib implementations?
Can we conjure a separate symbol instead of relying on a particular struct
george.karpenkov added a comment.
Ooops, updated to https://bugs.llvm.org/show_bug.cgi?id=34869
https://reviews.llvm.org/D38702
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
george.karpenkov updated this revision to Diff 118291.
george.karpenkov added a comment.
Review comments.
https://reviews.llvm.org/D38702
Files:
lib/Analysis/BodyFarm.cpp
test/Analysis/call_once.cpp
Index: test/Analysis/call_once.cpp
===
This revision was automatically updated to reflect the committed changes.
Closed by commit rL315250: [Analyzer] Do not segfault on unexpected call_once
implementation (authored by george.karpenkov).
Changed prior to commit:
https://reviews.llvm.org/D38702?vs=118291&id=118294#toc
Repository:
george.karpenkov created this revision.
Herald added subscribers: szepet, xazax.hun, mgorny.
https://reviews.llvm.org/D38764
Files:
include/clang/StaticAnalyzer/Checkers/Checkers.td
lib/StaticAnalyzer/Checkers/CMakeLists.txt
lib/StaticAnalyzer/Checkers/NonnilStringConstantsChecker.cpp
tes
george.karpenkov updated this revision to Diff 118493.
https://reviews.llvm.org/D38764
Files:
include/clang/StaticAnalyzer/Checkers/Checkers.td
lib/StaticAnalyzer/Checkers/CMakeLists.txt
lib/StaticAnalyzer/Checkers/NonnilStringConstantsChecker.cpp
test/Analysis/nonnil-string-constants.mm
george.karpenkov added a comment.
Marking requests as "done".
https://reviews.llvm.org/D38764
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
george.karpenkov updated this revision to Diff 118521.
george.karpenkov marked 12 inline comments as done.
george.karpenkov added a comment.
Adhering to comments.
https://reviews.llvm.org/D38764
Files:
include/clang/StaticAnalyzer/Checkers/Checkers.td
lib/StaticAnalyzer/Checkers/CMakeLists.
george.karpenkov updated this revision to Diff 118522.
george.karpenkov added a comment.
Typo fix.
https://reviews.llvm.org/D38764
Files:
include/clang/StaticAnalyzer/Checkers/Checkers.td
lib/StaticAnalyzer/Checkers/CMakeLists.txt
lib/StaticAnalyzer/Checkers/NonnullStringConstantsChecker.
george.karpenkov created this revision.
Herald added subscribers: szepet, kristof.beyls, xazax.hun, javed.absar,
aemerson.
https://reviews.llvm.org/D38810
Files:
lib/Analysis/BodyFarm.cpp
test/Analysis/call_once.cpp
Index: test/Analysis/call_once.cpp
george.karpenkov marked 9 inline comments as done.
george.karpenkov added inline comments.
Comment at: lib/StaticAnalyzer/Checkers/NonnullStringConstantsChecker.cpp:22
+// Checker uses are defined in the test file:
+// - test/Analysis/nonnull-string-constants.mm
+//
--
george.karpenkov updated this revision to Diff 118657.
george.karpenkov marked 2 inline comments as done.
https://reviews.llvm.org/D38764
Files:
include/clang/StaticAnalyzer/Checkers/Checkers.td
lib/StaticAnalyzer/Checkers/CMakeLists.txt
lib/StaticAnalyzer/Checkers/NonnullStringConstantsChe
This revision was automatically updated to reflect the committed changes.
Closed by commit rL315488: [Analyzer] Assume that string-like const globals are
non-nil. (authored by george.karpenkov).
Changed prior to commit:
https://reviews.llvm.org/D38764?vs=118657&id=118660#toc
Repository:
rL L
This revision was automatically updated to reflect the committed changes.
Closed by commit rL315508: [Analyzer] Support bodyfarming libstdc++
implementation of std::call_once. (authored by george.karpenkov).
Changed prior to commit:
https://reviews.llvm.org/D38810?vs=118644&id=118686#toc
Repos
george.karpenkov added a comment.
@mgorny I've replied via email, but the message didn't seem to appear here.
From my (maybe limited) understanding, running tests on standalone compiler-rt
builds was never something which was supported, as that required a fresh
compiler.
I've just tried running
george.karpenkov accepted this revision.
george.karpenkov added a comment.
This revision is now accepted and ready to land.
Yep, thanks! This was probably the root cause of the failure.
https://reviews.llvm.org/D38839
___
cfe-commits mailing list
cf
george.karpenkov accepted this revision.
george.karpenkov added a comment.
This revision is now accepted and ready to land.
Yep, thanks! Good to go provided tests run.
Looks like we haven't spotted it due to other bug you have fixed cancelling
this one out.
https://reviews.llvm.org/D38838
__
george.karpenkov requested changes to this revision.
george.karpenkov added a comment.
This revision now requires changes to proceed.
@mgorny so this one actually changes semantics.
The previous one reused generated object files, and with the change it will
start recompiling all the tests again.
george.karpenkov accepted this revision.
george.karpenkov added a comment.
This revision is now accepted and ready to land.
LGTM, provided tests pass both in standalone and "normal" modes.
https://reviews.llvm.org/D38840
___
cfe-commits mailing list
george.karpenkov created this revision.
Herald added subscribers: mgorny, dberris.
When `LLVM_BUILD_EXTERNAL_COMPILER_RT` option is set to true,
all of projects in compiler-rt are built with a freshly-built compiler using
a recursive CMake invocation.
(e.g. that's how compiler-rt is used in Swift)
This revision was automatically updated to reflect the committed changes.
Closed by commit rL315771: Allow building libFuzzer in two-stage compiler-rt
build (authored by george.karpenkov).
Changed prior to commit:
https://reviews.llvm.org/D38904?vs=118977&id=118979#toc
Repository:
rL LLVM
h
george.karpenkov created this revision.
Herald added subscribers: szepet, xazax.hun.
@dcoughlin I'm curious whether you'd like such a change: in general, I think it
is much better when the assert failure tells the developer _what_ value is
failing, rather than saying "oops we are dead".
I would
george.karpenkov created this revision.
Herald added subscribers: szepet, kristof.beyls, xazax.hun, javed.absar,
aemerson.
Remove an option to use a reference type (on by default!) since a non-reference
type is always needed for creating expressions, functions with multiple boolean
parameters a
george.karpenkov updated this revision to Diff 119360.
https://reviews.llvm.org/D39015
Files:
lib/Analysis/BodyFarm.cpp
test/Analysis/call_once.cpp
Index: test/Analysis/call_once.cpp
===
--- test/Analysis/call_once.cpp
+++ test
This revision was automatically updated to reflect the committed changes.
Closed by commit rL316041: [Analyzer] Always use non-reference types when
creating expressions in BodyFarm. (authored by george.karpenkov).
Changed prior to commit:
https://reviews.llvm.org/D39015?vs=119360&id=119392#toc
george.karpenkov created this revision.
Herald added subscribers: szepet, kristof.beyls, xazax.hun, javed.absar,
aemerson.
Also explicitly do not support functors for now, since that entails figuring
out which call operator corresponds to the passed parameters.
Resolution: we really should not d
This revision was automatically updated to reflect the committed changes.
Closed by commit rL316249: [Analyzer] Correctly handle parameters passed by
reference when bodyfarming std… (authored by george.karpenkov).
Changed prior to commit:
https://reviews.llvm.org/D39031?vs=119415&id=119724#toc
george.karpenkov created this revision.
Herald added subscribers: szepet, kristof.beyls, xazax.hun, javed.absar,
aemerson.
https://reviews.llvm.org/D39201
Files:
lib/Analysis/BodyFarm.cpp
test/Analysis/call_once.cpp
Index: test/Analysis/call_once.cpp
===
george.karpenkov created this revision.
Herald added subscribers: szepet, kristof.beyls, xazax.hun, javed.absar,
aemerson.
https://reviews.llvm.org/D39208
Files:
include/clang/Analysis/AnalysisDeclContext.h
include/clang/Analysis/BodyFarm.h
lib/Analysis/AnalysisDeclContext.cpp
lib/Analys
george.karpenkov added a comment.
@dcoughlin that's not me, that's clang-format.
If we agree on always running it, I think the changes should stay there.
https://reviews.llvm.org/D39208
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://
george.karpenkov added a comment.
@dcoughlin the context I was thinking about is that if everyone consistently
runs `clang-format` (if we want that), then we never would have discussion.
The alternative is that every run of `clang-format` would be followed by
manually reverting changes which wer
This revision was automatically updated to reflect the committed changes.
Closed by commit rL316400: [Analyzer] Do not use static storage to for
implementations created in BodyFarm. (authored by george.karpenkov).
Changed prior to commit:
https://reviews.llvm.org/D39208?vs=119949&id=119974#toc
george.karpenkov added a comment.
@dcoughlin OK sorry, I haven't considered the point that codebase predates the
requirement, and the master format-all commit was never done.
I've committed this one already, but I will be more careful with applying
clang-format to future changes.
Repository:
This revision was automatically updated to reflect the committed changes.
Closed by commit rL316402: [Analyzer] Handle implicit function reference in
bodyfarming std::call_once (authored by george.karpenkov).
Changed prior to commit:
https://reviews.llvm.org/D39201?vs=119911&id=119975#toc
Repo
george.karpenkov created this revision.
Herald added subscribers: szepet, kristof.beyls, xazax.hun, aemerson.
While by using `.get()` method we don't get the full protection offered by
`std::unique_ptr`, given that two bugs were already encountered
(http://lab.llvm.org:8011/builders/sanitizer-x8
george.karpenkov added a comment.
@dcoughlin
> Is it when an end-user is running a build with assertions and can't provide a
> reproducer but can provide the console output?
Yes, or just for developer staring at the crash for the first time, or for the
crashers in CI.
> Does llvm_unreachable(
george.karpenkov updated this revision to Diff 120109.
https://reviews.llvm.org/D39220
Files:
include/clang/Analysis/AnalysisDeclContext.h
lib/Analysis/AnalysisDeclContext.cpp
Index: lib/Analysis/AnalysisDeclContext.cpp
===
---
george.karpenkov added inline comments.
Comment at: cfe/trunk/lib/Analysis/AnalysisDeclContext.cpp:607
+AnalysisDeclContextManager::~AnalysisDeclContextManager() {
+ if (!BdyFrm)
+delete BdyFrm;
alexfh wrote:
> This is an almost guaranteed memory leak. I thi
george.karpenkov added inline comments.
Comment at: include/clang/Analysis/AnalysisDeclContext.h:424
/// methods during the analysis.
- BodyFarm *BdyFrm = nullptr;
+ std::unique_ptr BdyFrm;
alexfh wrote:
> BdyFrm is somewhat cryptic. Maybe Farm, Bodies or
This revision was automatically updated to reflect the committed changes.
Closed by commit rL316536: [Analyzer] Store BodyFarm in std::unique_ptr
(authored by george.karpenkov).
Changed prior to commit:
https://reviews.llvm.org/D39220?vs=120109&id=120151#toc
Repository:
rL LLVM
https://revi
george.karpenkov added inline comments.
Comment at: cfe/trunk/lib/Analysis/BodyFarm.cpp:139
-DeclRefExpr *ASTMaker::makeDeclRefExpr(const VarDecl *D,
- bool RefersToEnclosingVariableOrCapture,
- bool Ge
george.karpenkov created this revision.
Herald added subscribers: szepet, xazax.hun.
Contrary to the deleted comment, in most cases CmpRuns.py produces a fairly
small amount of output, which is useful to see straight away to see what has
changed when executing the integration tests.
https://re
george.karpenkov created this revision.
george.karpenkov added reviewers: NoQ, bogner, chandlerc, zturner, aprantl.
Herald added a subscriber: mgrang.
There are many "dumping" actions available from the compiler: Clang dumps AST,
Clang static analyzer dumps generated nodes in the "exploded graph"
george.karpenkov created this revision.
george.karpenkov added reviewers: dcoughlin, NoQ.
Herald added subscribers: Szelethus, mikhail.ramalho, a.sidorin, mgrang,
szepet, baloghadamsoftware, xazax.hun.
https://reviews.llvm.org/D51395
Files:
clang/include/clang/StaticAnalyzer/Core/PathSensitive
1 - 100 of 558 matches
Mail list logo