dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
This looks good to me, but I think we need a deployment target check on the
diagnostic since the safe API is only available in iOS 11+, macOS 10.13+, tvOS
11+, and watchOS 4.0+. If the d
This revision was automatically updated to reflect the committed changes.
Closed by commit rG0aba69eb1a01: [analyzer] Add test directory for scan-build.
(authored by dcoughlin).
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D69781/new/
https://review
dcoughlin created this revision.
dcoughlin added a reviewer: NoQ.
Herald added subscribers: llvm-commits, cfe-commits, Charusso, dkrupp,
donat.nagy, Szelethus, mikhail.ramalho, a.sidorin, delcypher, szepet,
baloghadamsoftware, xazax.hun.
Herald added projects: clang, LLVM.
The static analyzer's
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
Looks good do me. Thanks!
Repository:
rC Clang
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D61958/new/
https://reviews.llvm.org/D61958
___
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
LGTM. Thanks!
Repository:
rC Clang
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D61925/new/
https://reviews.llvm.org/D61925
___
dcoughlin accepted this revision.
dcoughlin added a comment.
Looks good to me.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D61545/new/
https://reviews.llvm.org/D61545
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.ll
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
Looks good to me!
Repository:
rC Clang
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D61161/new/
https://reviews.llvm.org/D61161
___
dcoughlin added a comment.
Looks good to me. This is a really interesting corner of Objective-C++!
Repository:
rC Clang
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D60988/new/
https://reviews.llvm.org/D60988
___
cfe-commits mailing list
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
LGTM.
Comment at: clang/unittests/StaticAnalyzer/StoreTest.cpp:20
+// back from that variable. Test what happens if default bindings are used.
+class VariableBindConsum
dcoughlin requested changes to this revision.
dcoughlin added a comment.
This revision now requires changes to proceed.
I'm not sure we really want to add any more examples of plugins.
Analyzer plugins aren't supported and likely never will be. We probably
shouldn't give people false hope that a
dcoughlin added a comment.
This looks good to me. It is great to see this tested!
Did you consider separating the checker options from the non-checker options in
the config dumper output? That would probably be easier to read.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D57922/new/
h
dcoughlin requested changes to this revision.
dcoughlin added a comment.
This revision now requires changes to proceed.
I think it would be better if the default for compatibility mode were 'true'.
That way this change will be backwards compatible and clients who want to
enforce stricter checkin
dcoughlin requested changes to this revision.
dcoughlin added a comment.
This revision now requires changes to proceed.
I'm pretty worried about exposing this flag to end users.
- Almost none of the options you've listed are user facing. Many represent
options intended for use by static analyzer
This revision was automatically updated to reflect the committed changes.
Closed by commit rL356308: [analyzer] Teach scan-build to find clang when
installed in /usr/local/bin/ (authored by dcoughlin, committed by ).
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.
Changed p
dcoughlin updated this revision to Diff 190931.
dcoughlin edited the summary of this revision.
dcoughlin added a comment.
Herald added a subscriber: jdoerfert.
Update to restrict the new behavior to when Xcode is present.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D59406/new/
https://
dcoughlin added a comment.
That's a good point. I've updated the patch to look for 'xcrun'
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D59406/new/
https://reviews.llvm.org/D59406
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http
dcoughlin created this revision.
dcoughlin added a reviewer: NoQ.
Herald added subscribers: cfe-commits, Charusso, dkrupp, donat.nagy, Szelethus,
mikhail.ramalho, a.sidorin, szepet, baloghadamsoftware, xazax.hun.
Herald added a project: clang.
Change scan-build to support the scenario where scan-
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
Sigh. Looks good!
Repository:
rC Clang
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D59123/new/
https://reviews.llvm.org/D59123
___
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
LGTM.
Repository:
rC Clang
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D58529/new/
https://reviews.llvm.org/D58529
___
cfe-com
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
Aah, MIG_NO_REPLY.
LGTM.
Comment at: clang/lib/StaticAnalyzer/Checkers/MIGChecker.cpp:42
+ std::vector> Deallocators = {
+#define CALL(required_args, deallocated_arg,
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
Oh, interesting. I'm glad you thought of this!
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D58392/new/
https://reviews.llvm.org/D58392
__
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
Looks good to me. I have some a minor diagnostic wording suggestion in line.
Comment at: clang/lib/StaticAnalyzer/Checkers/MIGChecker.cpp:109
+llvm::raw_svector_ost
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
LGTM.
Comment at: clang/test/Analysis/mig.mm:2
+// RUN: %clang_analyze_cc1 -w -analyzer-checker=core,alpha.osx.MIG\
+// RUN:-fblocks -verify %s
--
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
This looks good to me as long as Aaron is happy with it.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D58365/new/
https://reviews.llvm.org/D58365
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
Looks good to me.
Repository:
rC Clang
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D57981/new/
https://reviews.llvm.org/D57981
___
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
This seems reasonable to me, but please have George take a look too.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D55907/new/
https://reviews.llvm.org/D55907
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
Looks good to me.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D55875/new/
https://reviews.llvm.org/D55875
___
cfe-commits mailing
dcoughlin added a comment.
These seems reasonable, although it does also seem like there could be quite a
few unintended consequences that we haven't discovered yet.
I'm also a bit worried about the change in the analyzer's behavior on copy().
Do you have a sense of how much of an effect this w
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
LGTM.
Comment at: test/Analysis/string.cpp:23
+
+// A similarly weird override outside of the class.
+void *memcpy(void *, const S &, size_t);
I'm pret
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
This seems reasonable to me, although I have a question inline about why you
are using `makeZeroElementRegion()`.
Comment at: lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
dcoughlin added a comment.
This looks good to me. It is great to see a dumper for this!
Repository:
rL LLVM
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D55566/new/
https://reviews.llvm.org/D55566
___
cfe-commits mailing list
cfe-commits
dcoughlin added a comment.
Looks good to me!
Repository:
rL LLVM
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D55671/new/
https://reviews.llvm.org/D55671
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-b
dcoughlin added a comment.
Looks good! Some suggested minor tweaks to diagnostic text inline.
Comment at: test/Analysis/use-after-move.cpp:146
+A b = std::move(a); // expected-note {{Object 'a' is moved}}
+b = a; // expected-warning {{Moved-from object is c
dcoughlin added a comment.
It is really nice to see this checker take shape! Some drive by diagnostic
comments in line.
Comment at: test/Analysis/dangling-internal-buffer.cpp:175
std::string s;
- {
-c = s.c_str();
- }
- consume(c); // no-warning
+ c = s.c_str(); //
dcoughlin added a comment.
In https://reviews.llvm.org/D46159#1085548, @pfultz2 wrote:
> > Do you have some better choices?
>
> I could do `-allow-alpha-checks`. What do you think?
That seems reasonable to me. Although I like `-allow-enabling-alpha-checks`
better because it is longer and will
dcoughlin added a comment.
In https://reviews.llvm.org/D46159#1081371, @lebedev.ri wrote:
> Note that it is completely off by default, and is not listed in
> documentation, `clang-tidy --help`,
> so one would have to know of the existence of that hidden flag first, and
> only then when that fl
dcoughlin added a comment.
I'm curious about the use case for this, since I don't think it ever makes
sense to run all the alpha checks at once. These checks are typically a work in
progress (they're not finished yet) and often have false positives that haven't
been fixed yet. Often they don't
dcoughlin accepted this revision.
dcoughlin added a comment.
LGTM. I really appreciate the extra documentation you've added, too.
https://reviews.llvm.org/D44597
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/m
dcoughlin added a comment.
This looks good. Some minor post-commit review inline.
Comment at: include/clang/StaticAnalyzer/Checkers/Checkers.td:615
+
+def GCDAsyncSemaphoreChecker : Checker<"GCDAsyncSemaphore">,
+ HelpText<"Checker for performance anti-pattern when using semap
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
LGTM!
Comment at: test/Analysis/lifetime-extension.cpp:301
+ }
+ // 1. Construct the original temporary within make(),
+ // 2. Construct return value of make() (eli
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
This looks good to me. I'm not super happy with the name "CFGValueTypedCall"
since it doesn't make it obvious that is reflects "a function call that
returns a C++ object by value."
Is
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
Yay! This looks good to me.
https://reviews.llvm.org/D43804
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/c
dcoughlin accepted this revision.
dcoughlin added a comment.
Thanks Gabor, this looks good to me. Please commit!
https://reviews.llvm.org/D30691
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/c
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
LGTM. I have a suggestion for a slight modification of the diagnostic text
inline.
Comment at: test/Analysis/implicit-ctor-undef-value.cpp:12
+// missing. Specify whic
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
LGTM.
https://reviews.llvm.org/D43714
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinf
dcoughlin accepted this revision.
dcoughlin added inline comments.
This revision is now accepted and ready to land.
Comment at: include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h:70
+/// by binding a smaller object within it to a reference.
+bool IsTemporaryLife
dcoughlin added inline comments.
Comment at: lib/StaticAnalyzer/Core/ExprEngine.cpp:2234
+ // should go away, but the assertion should remain, without the
+ // "DidCacheOutOnCleanup" part, of course.
+ bool DidCacheOutOnCleanup = false;
Can you add a comment e
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
This seems reasonable to me.
https://reviews.llvm.org/D43483
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
LGTM.
Repository:
rC Clang
https://reviews.llvm.org/D43477
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
It seems kind of sketchy to me that we're recursing over an expression to find
construction contexts and then later doing it again for sub-expressions. I
guess there is precedent here wi
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
Looks good to me. I have a comment about simplifying
createTemporaryRegionIfNeeded() (if possible) inline.
Comment at: lib/StaticAnalyzer/Core/ExprEngine.cpp:281
+
+
dcoughlin added a comment.
This looks great to me Artem! I'll be very curious to see how you extend this
to handle initializer lists.
Comment at: lib/Analysis/CFG.cpp:4737
+}
+case ConstructionContext::SimpleVariableKind: {
+ const auto *DSCC = cast(CC
dcoughlin added inline comments.
Comment at: lib/StaticAnalyzer/Core/ExprEngine.cpp:939
std::make_pair(D.getBindTemporaryExpr(), Pred->getStackFrame()));
+// *MRPtr may still be null when the construction context for the temporary
+// was not implemented.
---
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
This looks good to me, but I think you should include your explanatory comments
in the commit message to the comment itself to help future violators of the
assertion out!
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
This looks good to me, although as I noted inline I think both the name and the
comment for VisitForConstructionContext() are confusing. If you can be more
precise I think it would help
dcoughlin added a comment.
I think it will be great to have a more explicit representation of construction
in the CFG! Comments in line.
Comment at: include/clang/Analysis/CFG.h:143
+ CXXConstructExpr *Constructor;
+ Stmt *Trigger;
+
I think it would be good
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
This looks good to me. However, I do think you should take George's suggestion
to have makeZeroElementRegion() have a boolean out parameter rather than a
EvalCallOptions out parameter. T
dcoughlin added inline comments.
Comment at:
cfe/trunk/lib/StaticAnalyzer/Checkers/CheckSecuritySyntaxOnly.cpp:517
+if (const auto *Array = dyn_cast(DeclRef->getType())) {
+ uint64_t ArraySize = BR.getContext().getTypeSize(Array) / 8;
+ if (const auto *String = dyn
dcoughlin accepted this revision.
dcoughlin added a comment.
Looks good to me, thanks!
https://reviews.llvm.org/D41816
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
dcoughlin added a comment.
This seems reasonable.
Would it make sense to use the last element of the block edge's source for the
diagnostic location when the destination block is empty?
Repository:
rC Clang
https://reviews.llvm.org/D42266
___
c
dcoughlin added a comment.
The diagnostic text looks to me, but I do have a comment about the nested 'if'
inline.
Comment at: lib/StaticAnalyzer/Checkers/UndefResultChecker.cpp:150
+SB.getKnownValue(state, C.getSVal(B->getRHS()));
+if ((unsigned) RHS->getZE
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
LGTM. Thanks for fixing this.
Repository:
rC Clang
https://reviews.llvm.org/D42015
___
cfe-commits mailing list
cfe-commits@lists.llvm.o
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
Thanks for adding these! This looks good to me. Do you have commit access, or
do you need someone to commit this?
Repository:
rC Clang
https://reviews.llvm.org/D41881
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
LGTM!
Repository:
rC Clang
https://reviews.llvm.org/D41797
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
Looks great. It is nice to have this fixed and cleaned up!
Comment at: lib/StaticAnalyzer/Checkers/AnalysisOrderChecker.cpp:95
+ llvm::errs() << "PreCall";
+
dcoughlin accepted this revision.
dcoughlin added a comment.
LGTM as well.
https://reviews.llvm.org/D41266
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
dcoughlin accepted this revision.
dcoughlin added a comment.
This looks good to me, as well.
https://reviews.llvm.org/D41250
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
LGTM with the TODO and the test case I requested inline.
Comment at: lib/StaticAnalyzer/Core/ExprEngine.cpp:487
+if (const MemRegion *MR = I.second.getAsRegion())
+
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
LGTM!
Repository:
rC Clang
https://reviews.llvm.org/D41935
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org
dcoughlin added inline comments.
Comment at: lib/StaticAnalyzer/Core/ExprEngineCXX.cpp:477
+bool ExprEngine::isStandardGlobalOperatorNewFunction(const CXXNewExpr *CNE) {
+ const FunctionDecl *FD = CNE->getOperatorNew();
+ if (FD && !isa(FD) && !FD->isVariadic()) {
-
dcoughlin accepted this revision.
dcoughlin added inline comments.
This revision is now accepted and ready to land.
Comment at: lib/StaticAnalyzer/Core/CheckerManager.cpp:491
NodeBuilder &Bldr, ExplodedNode *Pred) {
// TODO: Does this deserve a custom
dcoughlin added a comment.
LGTM as well.
Repository:
rC Clang
https://reviews.llvm.org/D41408
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
Looks good to me with some minor nits inside (and also a request to consider
factoring out common code).
Comment at: include/clang/StaticAnalyzer/Core/CheckerManager.h
dcoughlin accepted this revision.
dcoughlin added a comment.
Yes, this looks great!
https://reviews.llvm.org/D41749
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
dcoughlin added a comment.
LGTM as well.
Repository:
rC Clang
https://reviews.llvm.org/D41409
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
LGTM. The tests are great!!
Repository:
rC Clang
https://reviews.llvm.org/D41478
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
Looks good to me, although I have a super nit about wording in a comment.
Comment at: lib/StaticAnalyzer/Core/ExprEngine.cpp:2181
+ // One of the forbidden LValue
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
Looks good to me.
Repository:
rC Clang
https://reviews.llvm.org/D41258
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://li
dcoughlin added a comment.
Some comments on the C++ inline.
Comment at: include/clang/AST/ASTContext.h:82
class APValue;
+class ASTImporter;
class ASTMutationListener;
Is this forward declaration needed?
Comment at: include/clang/StaticAnal
dcoughlin added a comment.
In https://reviews.llvm.org/D40809#954890, @NoQ wrote:
> In https://reviews.llvm.org/D40809#954858, @dcoughlin wrote:
>
> > One possibility is to turn this into a debug checker similar to
> > debug.ViewExplodedGraph. That checker registers for a checkEndAnalysis()
> >
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
This looks good to me for a quick fix that we plan to address in a more
principled fashion later.
However, I'd like you to add a comment at each of the places where you use the
parent m
dcoughlin added a comment.
This is seems like a very useful visualization, *especially* for loops. Can we
this patch get it into a state where it can be committed and used for debugging
purposes?
One possibility is to turn this into a debug checker similar to
debug.ViewExplodedGraph. That chec
dcoughlin added a comment.
Thanks for looking into this!
This checker is in the 'core' package, which means (when moved out of alpha) it
will be enabled by default.
- Do you think that this checker should be enabled by default for all users of
the analyzer?
- If users do actually want to use l
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
LGTM. Ship it!
Repository:
rC Clang
https://reviews.llvm.org/D40793
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists
dcoughlin added inline comments.
Comment at: include/clang/Basic/Attr.td:602
def AnalyzerNoReturn : InheritableAttr {
- let Spellings = [GNU<"analyzer_noreturn">];
+ let Spellings = [Clang<"analyzer_noreturn">];
let Documentation = [Undocumented];
aaron.bal
dcoughlin added a subscriber: alexfh.
dcoughlin added inline comments.
Comment at: include/clang/Basic/Attr.td:602
def AnalyzerNoReturn : InheritableAttr {
- let Spellings = [GNU<"analyzer_noreturn">];
+ let Spellings = [Clang<"analyzer_noreturn">];
let Documentation = [Und
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
Thanks, this looks good to me!
Do you have commit access or do you need someone to commit it for you?
Comment at: lib/StaticAnalyzer/Checkers/UndefinedAssignmentChecke
This revision was automatically updated to reflect the committed changes.
Closed by commit rL319333: [analyzer] Fix unreachable creating
PathDiagnosticLocation with widen-loops=true (authored by dcoughlin).
Changed prior to commit:
https://reviews.llvm.org/D37187?vs=124549&id=124778#toc
Reposi
dcoughlin added inline comments.
Comment at: lib/StaticAnalyzer/Core/ExprEngineC.cpp:1046
if (V2_untested.isUnknownOrUndef()) {
Bldr.generateNode(U, *I, state->BindExpr(U, LCtx, V2_untested));
+
lebedev.ri wrote:
> dcoughlin wrote:
> > Instead of gene
dcoughlin added a comment.
Thanks for tackling this! There is one major comment inline (you are generating
an extra node that you shouldn't, which is causing the analyzer to explore code
it shouldn't) and a suggestion for simpler diagnostic text.
Comment at: lib/StaticAnalyze
dcoughlin accepted this revision.
dcoughlin added a comment.
LGTM, but as noted inline you should update the new llvm_unreachable() to have
a more descriptive error message.
Do you have commit access or do you need someone to commit this for you?
Comment at: lib/StaticAnalyze
dcoughlin added inline comments.
Comment at: lib/StaticAnalyzer/Core/PathDiagnostic.cpp:694
+ } else if (Optional BE = P.getAs()) {
+CFGElement BlockFront = BE->getBlock()->front();
+if (BlockFront.getKind() == CFGElement::Statement) {
MTC wrote:
> dcoug
dcoughlin added a comment.
For clang itself I think we also use a stage-2 clang to build the same version
of clang and make sure that it matches the stage-2 clang. This doesn't help for
the analyzer though.
Repository:
rL LLVM
https://reviews.llvm.org/D40073
_
dcoughlin added a comment.
Thanks! Do you have commit access, or do you need someone to commit this for
you?
https://reviews.llvm.org/D40073
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
Thanks for finding and fixing this!
This looks good, but since the nondeterminism is in CFG construction, I think
it makes sense to create and dump the CFG rather than running the whole
dcoughlin added inline comments.
Comment at: lib/StaticAnalyzer/Core/PathDiagnostic.cpp:694
+ } else if (Optional BE = P.getAs()) {
+CFGElement BlockFront = BE->getBlock()->front();
+if (BlockFront.getKind() == CFGElement::Statement) {
MTC wrote:
> szepe
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
LGTM! Thanks Anna!
https://reviews.llvm.org/D39964
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/ma
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
LGTM. Thanks!
In https://reviews.llvm.org/D38801#910524, @NoQ wrote:
> Also the overload between `getSVal(Ex, LC)` and `getSVal(R, Ty)`, when they
> do completely different things, seem
dcoughlin accepted this revision.
dcoughlin added a comment.
This revision is now accepted and ready to land.
LGTM.
https://reviews.llvm.org/D39803
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinf
dcoughlin accepted this revision.
dcoughlin added a comment.
LGTM.
I suppose we could move the logic that constructs pointers to members for
fields here (right now that logic is in ExprEngine::VisitUnaryOperator()'s
handling of '&'). However, since the AST's DeclRefExpr for the field is marked
1 - 100 of 274 matches
Mail list logo