Page MenuHomePhabricator

NoQ (Artem Dergachev)
User

Projects

User does not belong to any projects.

User Details

User Since
Sep 3 2015, 9:16 AM (293 w, 5 d)

Recent Activity

Today

NoQ added a comment to D97183: [analyzer] Add NoteTag for smart-ptr get().

I think we can conclude that P must be non-null (since it was unconditionally dereferenced), thus the previous check on the inner pointer and the branch it guards must be dead!

Tue, Apr 20, 10:32 AM · Restricted Project

Thu, Apr 8

NoQ added a comment to D90157: [analyzer] Rework SValBuilder::evalCast function into maintainable and clear way.

I'm catching up and these changes look great.

Thu, Apr 8, 10:59 AM · Restricted Project
NoQ added a comment to D96090: [analyzer] Replace StoreManager::CastRetrievedVal with SValBuilder::evalCast.

Which is fairly shocking and mind blowing that we've organically developed two independent implementations of casting, one for RegionStore and one for everything else.

Thu, Apr 8, 10:53 AM · Restricted Project
NoQ accepted D99260: [analyzer] Fix false positives in inner pointer checker (PR49628).

Looks great now, thanks!

Thu, Apr 8, 9:35 AM · Restricted Project
NoQ accepted D99181: [analyzer] Fix crash on spaceship operator (PR47511).

Looks great now!

Thu, Apr 8, 9:15 AM · Restricted Project
NoQ added a comment to D96090: [analyzer] Replace StoreManager::CastRetrievedVal with SValBuilder::evalCast.

This looks amazing, thanks a lot.

Thu, Apr 8, 12:46 AM · Restricted Project

Wed, Apr 7

NoQ accepted D99262: [analyzer] Fix dead store checker false positive.
Wed, Apr 7, 10:51 AM · Restricted Project

Tue, Apr 6

NoQ added a comment to D69726: [analyzer] DynamicSize: Store the dynamic size.

Here's a reduced repro - a file that has different behavior before and after the patch (sorry, not perfectly reduced, my creduce is broken again):

// RUN: clang --analyze %s
typedef Oid;
typedef Pointer;
typedef text;
errstart(int elevel, filename, lineno, funcname, domain);
typedef Datum;
typedef struct {
  Oid elemtype;
} ArrayType;
Tue, Apr 6, 10:16 PM · Restricted Project
NoQ accepted D99194: [analyzer] Fix body farm for Obj-C++ properties.

Great, thanks!~

Tue, Apr 6, 2:39 PM · Restricted Project
NoQ accepted D99262: [analyzer] Fix dead store checker false positive.

Looks great and I'm also curious about nested initializers.

Tue, Apr 6, 2:39 PM · Restricted Project
NoQ accepted D99601: [-Wcompletion-handler] Don't recognize init methods as conventional.

Looks great now!

Tue, Apr 6, 10:08 AM · Restricted Project
NoQ accepted D99658: [analyzer] Fix clang_analyzer_getExtent for heap regions.

I mean, the extent of an ElementRegion is the size of a single element. The reason why our intrinsic isn't doing what you expect is because we represent the pointer with offset as ElementRegion regardless of whether operator [] was used. On the other hand, an SVal doesn't ever represent a region at all, it only points to its first byte, regardless of the structure of MemRegion inside it; for that reason clang_analyzer_getExtent() is impossible to implement correctly in our current model.

Tue, Apr 6, 10:07 AM · Restricted Project
NoQ accepted D99959: [analyzer][NFC] Add tests for extents.

More tests are great!

Tue, Apr 6, 9:58 AM · Restricted Project
NoQ added inline comments to D99194: [analyzer] Fix body farm for Obj-C++ properties.
Tue, Apr 6, 9:56 AM · Restricted Project

Mon, Apr 5

NoQ added a comment to D98726: [analyzer] Enabling MallocChecker to take up after SmartPtrModelling.

@NoQ, regarding https://godbolt.org/z/1EczEW, I don't think there should be a warning since the original pointer may be needed in the caller.

Mon, Apr 5, 10:49 AM · Restricted Project
NoQ added inline comments to D99601: [-Wcompletion-handler] Don't recognize init methods as conventional.
Mon, Apr 5, 9:41 AM · Restricted Project
NoQ added inline comments to D99181: [analyzer] Fix crash on spaceship operator (PR47511).
Mon, Apr 5, 9:36 AM · Restricted Project
NoQ added a comment to D99260: [analyzer] Fix false positives in inner pointer checker (PR49628).

It does make sense to split these in two, but I'm not so sure about evalCall.

Mon, Apr 5, 9:32 AM · Restricted Project

Thu, Apr 1

NoQ added a comment to D99658: [analyzer] Fix clang_analyzer_getExtent for heap regions.

What about clang_analyzer_getExtent(&x[2]) then?

Thu, Apr 1, 8:39 PM · Restricted Project
NoQ added a comment to D99659: [analyzer][taint] Extent of heap regions should get taint sometimes.

This will be obsoleted by D69726 because they are going to be the same symbol to begin with.

Thu, Apr 1, 8:36 PM · Restricted Project
NoQ accepted D69726: [analyzer] DynamicSize: Store the dynamic size.

I don't see any further bugs so I think this is good to go!

Thu, Apr 1, 8:35 PM · Restricted Project

Mon, Mar 29

NoQ added a comment to D97183: [analyzer] Add NoteTag for smart-ptr get().

@NoQ, why does the following trigger a null-dereference warning? (https://godbolt.org/z/Kxox8qd16)

void g(std::unique_ptr<A> a) {
  A *aptr = a.get();
  if (!aptr) {}
  a->foo();
}

When a->foo() is called, the constraint !aptr is no longer valid and so InnerPointerVal corresponding to a is no longer constrained to be null.
Am I missing something?

When the if's condition is evaluated, it probably triggered a state split. On one path the aptr (aka. the inner pointer) will be constrained to null.
The only way to be sure is by checking the exploded graph and see where it goes.

Mon, Mar 29, 11:35 PM · Restricted Project
NoQ accepted D99500: [analyzer] Support allocClassWithName in OSObjectCStyleCast checker.

LGTM! Thanks for formatting ^.^

Mon, Mar 29, 11:04 PM · Restricted Project

Thu, Mar 25

NoQ added a comment to D99344: [Analyzer] Track RValue expressions.

I think this is a good targeted fix for that problem we've discussed, demonstrated by tests.

Thu, Mar 25, 1:54 PM · Restricted Project

Mar 20 2021

NoQ added a comment to D97183: [analyzer] Add NoteTag for smart-ptr get().

No-no, TrackControlDependencyCondBRVisitor's purpose is completely different. It tracks symbols that didn't necessarily participate in the report but participated in conditional statements that lexically surround the report. It's used for explaining how did we got ourselves into a given lexical spot but it doesn't explain why is this a problem.

Mar 20 2021, 2:02 PM · Restricted Project
NoQ added inline comments to D98948: [analyzer][solver] Fix infeasible constraints (PR49642).
Mar 20 2021, 1:30 PM · Restricted Project

Mar 19 2021

NoQ accepted D98948: [analyzer][solver] Fix infeasible constraints (PR49642).

Aha ok, seems reasonable, thx!

Mar 19 2021, 3:08 PM · Restricted Project

Mar 17 2021

NoQ added a comment to D97183: [analyzer] Add NoteTag for smart-ptr get().

By tracking the call-expression you're basically tracking the raw pointer value because that's what operators * and -> return. Of course operator * returns an lvalue reference rather than a pointer but we don't make a difference when it comes to SVal representation.

Mar 17 2021, 9:10 PM · Restricted Project
NoQ accepted D98688: [-Wcalled-once-parameter] Harden analysis in terms of block use.

Great, thanks!!

Mar 17 2021, 8:08 PM · Restricted Project
NoQ added inline comments to D98502: [clang][Checkers] Extend PthreadLockChecker state dump (NFC)..
Mar 17 2021, 2:04 AM · Restricted Project

Mar 16 2021

NoQ added inline comments to D98688: [-Wcalled-once-parameter] Harden analysis in terms of block use.
Mar 16 2021, 9:16 PM · Restricted Project
NoQ accepted D98694: [-Wcalled-once-parameter] Fix false positives for cleanup attr.

LGTM!

Mar 16 2021, 8:56 PM · Restricted Project
NoQ added inline comments to D98741: [analyzer] Introduce common bug category "Unused code"..
Mar 16 2021, 4:04 PM · Restricted Project
NoQ requested review of D98741: [analyzer] Introduce common bug category "Unused code"..
Mar 16 2021, 1:40 PM · Restricted Project
NoQ added a comment to D98502: [clang][Checkers] Extend PthreadLockChecker state dump (NFC)..

That's what i like to see!

Mar 16 2021, 1:15 PM · Restricted Project
NoQ added a comment to D98726: [analyzer] Enabling MallocChecker to take up after SmartPtrModelling.

For example this code does not trigger any warning:
https://godbolt.org/z/aM4xe7

Mar 16 2021, 1:02 PM · Restricted Project
NoQ accepted D98622: [-Wcalled-once-parameter] Let escapes overwrite MaybeCalled states.

LGTM! Do any of the high-level comments at the beginning of the file need to be updated to reflect this change?

Mar 16 2021, 12:47 PM · Restricted Project

Mar 12 2021

NoQ accepted D98504: [clang][Checkers] Fix PthreadLockChecker state cleanup at dead symbol..

Hmm this probably even deserves a warning? Like, the mutex goes out of scope but we don't know whether we've successfully destroyed it? Even if we perform the check later, we can't do anything about it anymore? (not sure how bad it is in practice)

Mar 12 2021, 9:46 PM · Restricted Project

Mar 10 2021

NoQ added a comment to D96090: [analyzer] Replace StoreManager::CastRetrievedVal with SValBuilder::evalCast.

Actually many cases don't need to know an exact original type.

Mar 10 2021, 7:00 PM · Restricted Project
NoQ added a comment to D97183: [analyzer] Add NoteTag for smart-ptr get().

I can see that it adds many visitors to the BugReport passed to it.

Mar 10 2021, 11:31 AM · Restricted Project
NoQ accepted D98341: [analyzer][solver] Prevent infeasible states (PR49490).

You're testing it with the help of an alpha checker. Is this checker doing something special that we don't do normally? In particular, both array bound checkers that we have are very likely to be re-done from scratch if they are ever to be completed. A lot of decisions in them are questionable. So i'm worried that this test will become stale in that process. Maybe a unittest would be more appropriate so that to guarantee the specific functionality without relying on implementation details of the specific checker(?)

Mar 10 2021, 8:42 AM · Restricted Project

Mar 9 2021

NoQ accepted D97388: [analyzer] Replace StoreManager::evalIntegralCast with SValBuilder::evalCast.

Ok then, let's try to land it! 🤞

Mar 9 2021, 2:07 PM · Restricted Project
NoQ added a comment to D97183: [analyzer] Add NoteTag for smart-ptr get().

why does this not work?

Mar 9 2021, 2:05 PM · Restricted Project
NoQ accepted D97874: [analyzer] Improve SVal cast from integer to bool using known RangeSet.

I still have concerns about these functions - isNull, isNonNull etc. They do indeed provide a quick test for nullness that doesn't involve constructing a new program state. This test, however, will never be as precise as constructing a new state. It used to be when RangeConstraintManager boiled down to simple range operations but now that it grew much larger (eg., the newly added support for symbolic == and != that involves tracking equivalence classes), there's really no way to tell whether a state is going to be feasible without running the whole machine and observing its emergent behavior, which is what assume() does. On the other hand i still don't see any indication that assume() is noticeably expensive. So i'm really worried that this is a premature optimization that sacrifices correctness for nothing. So i'm in favor of phasing out these functions entirely and converting all code to always use assume(). This may occasionally involve untangling unwanted recursions but i hope that all recursive-ish operations can be isolated within the constraint manager itself (and possibly in checker's evalAssume() which we can hopefully guard against with runtime assertions).

Mar 9 2021, 1:34 PM · Restricted Project
NoQ accepted D98251: [-Wcompletion-handler] Extend list of detected conventions.

Looks all clear.

Mar 9 2021, 1:22 PM · Restricted Project

Mar 3 2021

NoQ added a comment to D96090: [analyzer] Replace StoreManager::CastRetrievedVal with SValBuilder::evalCast.

So, like, I think it's a start. You introduced a single source of truth for casting SVals and it's good. But i'm worried about our API surface.

Mar 3 2021, 6:12 PM · Restricted Project
NoQ added inline comments to D96090: [analyzer] Replace StoreManager::CastRetrievedVal with SValBuilder::evalCast.
Mar 3 2021, 6:04 PM · Restricted Project
NoQ added a comment to D95799: [analyzer] Symbolicate float values with integral casting.

tiny patch

Mar 3 2021, 5:55 PM · Restricted Project
NoQ accepted D96586: [analyzer][CTU][NFC] Add an extra regression test.

I'm actually shocked that we provide such option at all. And that it's the first option in the list in scan-build --help. And that I haven't noticed it until now despite that. How did you discover the crash? Are people actually using it?

Mar 3 2021, 5:34 PM · Restricted Project
NoQ added a comment to D97699: [analyzer] Add InvalidPtrChecker.

CERT rules are typically very vague and don't map nicely into specific static analysis algorithms. A lot of CERT rules flag valid code as well as bugs. I want you to explain what *exactly* does the checker checks (say, in the form of a state machine, i.e. what sequences of events in the program does it find) and whether flagged code is expected to be always invalid.

Mar 3 2021, 5:19 PM · Restricted Project
NoQ added a comment to D97388: [analyzer] Replace StoreManager::evalIntegralCast with SValBuilder::evalCast.

That's definitely an improvement for our API surface. I think this is good but like @steakhal said I recommend running on a large codebase looking for potential regressions because this code is (still) very much spaghetti and hard to reason about.

Mar 3 2021, 3:55 PM · Restricted Project
NoQ added inline comments to D97874: [analyzer] Improve SVal cast from integer to bool using known RangeSet.
Mar 3 2021, 3:46 PM · Restricted Project

Mar 2 2021

NoQ added a comment to D97183: [analyzer] Add NoteTag for smart-ptr get().

In some cases BugReport.isInteresting(InnerPointerVal.getAsSymbol()) would yield us exactly what we want. But if there's no symbol we have no choice but to interact with the trackExpressionValue facility and this may turn out to be pretty challenging.

Mar 2 2021, 4:07 PM · Restricted Project

Feb 26 2021

NoQ added a comment to D97183: [analyzer] Add NoteTag for smart-ptr get().

The warning should be emitted but it shouldn't have a note at P.get() telling the user that an inner pointer was obtained.

Feb 26 2021, 11:23 AM · Restricted Project

Feb 25 2021

NoQ added a comment to D97183: [analyzer] Add NoteTag for smart-ptr get().

I suspect you're adding too many notes. The note needs to not be there if the *raw* pointer is not tracked. Eg., I suspect that your patch would add a note in the following case in which it shouldn't be there because the raw pointer value doesn't participate in the report despite smart pointer region being interesting:

std::unique_ptr<A> P;
A *a = P.get(); // shound't emit a note here
P->foo();

It's important to not emit redundant notes because users typically take these checker-specific notes as an indication that this information is an essential piece of evidence of the bug in their program. In this example they'd believe that the analyzer has figured out that the smart pointer is null by looking at what happens to the raw pointer value. So they may become very confused if this isn't the case.

Feb 25 2021, 9:07 PM · Restricted Project

Feb 15 2021

NoQ accepted D96733: Add Static Analyzer and LLDB GSoC Project.

We doing it this way now? Thanks! o.o

Feb 15 2021, 2:54 PM

Feb 12 2021

NoQ accepted D96611: [analyzer][tests] Fix issue comparison script.

Thx!~

Feb 12 2021, 10:10 AM · Restricted Project

Feb 11 2021

NoQ added a comment to D90691: [analyzer] Add new checker for unchecked return value..

but it is planned that the checker takes use of the planned new attributes to determine if a function should be checked

Feb 11 2021, 7:06 AM · Restricted Project

Feb 9 2021

NoQ accepted D96367: Partially Revert "scan-view: Remove Reporter.py and associated AppleScript files".

Ok no problem!

Feb 9 2021, 4:12 PM · Restricted Project

Feb 8 2021

NoQ added a comment to D96215: [clang-tidy] Recognize captures as a form of aliasing..

Should structured bindings be treated similarly as well (not necessarily as part of this patch)?

Feb 8 2021, 7:36 PM
NoQ accepted D96268: [-Wcompletion-handler] Support checks with builtins.

Aha, yup, makes sense!

Feb 8 2021, 7:13 PM · Restricted Project

Feb 6 2021

NoQ updated the summary of D96215: [clang-tidy] Recognize captures as a form of aliasing..
Feb 6 2021, 11:43 PM
NoQ requested review of D96215: [clang-tidy] Recognize captures as a form of aliasing..
Feb 6 2021, 7:29 PM

Feb 5 2021

NoQ added a comment to D96163: [analyzer] Add 12.0.0. release notes.

We have a bad track record of finishing, but forgetting to enable GSoC projects -- did the same happen to SmartPtrChecker or that still needs refinement?

Feb 5 2021, 12:37 PM · Restricted Project

Jan 29 2021

NoQ added inline comments to D93110: [analyzer] Implement fine-grained suppressions via attributes.
Jan 29 2021, 1:10 AM · Restricted Project

Jan 28 2021

NoQ added inline comments to D95403: [clang-tidy][analyzer][WIP] Clang-tidy reverse integration into Static Analyzer..
Jan 28 2021, 11:02 PM · Restricted Project
NoQ added a comment to D93110: [analyzer] Implement fine-grained suppressions via attributes.

What I want to avoid is having a static analyzer-specific suppression attribute, and a different one for clang-tidy, and a third one for the frontend.

Jan 28 2021, 10:31 PM · Restricted Project
NoQ added inline comments to D93630: [Attr] Apply GNU-style attributes to expression statements.
Jan 28 2021, 9:52 PM · Restricted Project

Jan 27 2021

grham389 awarded D35216: [analyzer] Escape symbols when creating std::initializer_list. a 100 token.
Jan 27 2021, 3:45 PM
NoQ requested review of D95519: [clang-tidy] bugprone-assert-side-effect: Warn on NSAssert by default..
Jan 27 2021, 5:41 AM · Restricted Project, Restricted Project
NoQ requested review of D95515: [clang-tidy] bugprone-assert-side-effect: Improve warning message..
Jan 27 2021, 4:08 AM · Restricted Project
NoQ updated the diff for D95403: [clang-tidy][analyzer][WIP] Clang-tidy reverse integration into Static Analyzer..

Unforget to git add tests.

Jan 27 2021, 3:04 AM · Restricted Project
NoQ added a comment to D94476: [analyzer] Implement conversion from Clang diagnostics to PathDiagnostics..

I excluded remarks for now with an assertion. Other tests added :)

Jan 27 2021, 3:03 AM · Restricted Project
NoQ updated the diff for D94476: [analyzer] Implement conversion from Clang diagnostics to PathDiagnostics..

Address review comments!

Jan 27 2021, 3:01 AM · Restricted Project

Jan 25 2021

NoQ updated the summary of D95403: [clang-tidy][analyzer][WIP] Clang-tidy reverse integration into Static Analyzer..
Jan 25 2021, 3:21 PM · Restricted Project
NoQ requested review of D95403: [clang-tidy][analyzer][WIP] Clang-tidy reverse integration into Static Analyzer..
Jan 25 2021, 3:19 PM · Restricted Project
NoQ added a comment to D95307: [StaticAnalyzer] Add checking for degenerate base class in MemRegion.

Funnily enough, when I run ninja clang-check I don't get any errors.

I believe that ninja check-clang is the right command (clang-check is a tool) :-)

Jan 25 2021, 12:50 PM · Restricted Project
NoQ added a comment to D95307: [StaticAnalyzer] Add checking for degenerate base class in MemRegion.
In D95307#2518592, @NoQ wrote:

This patch shoots the messenger but someone still needs to conduct a proper investigation. The assertion is losing a lot more of its bug-finding power than necessary to uncover the current cornercase; i really hope to preserve it instead.

You mean the failing assertion from the tests?

Jan 25 2021, 12:48 PM · Restricted Project
NoQ accepted D95249: [NFC] Disallow unused prefixes in clang/test/Analysis.

Thanks!!

Jan 25 2021, 12:08 PM · Restricted Project

Jan 24 2021

NoQ added reviewers for D95307: [StaticAnalyzer] Add checking for degenerate base class in MemRegion: vsavchenko, xazax.hun, martong, kromanenkov.

This patch shoots the messenger but someone still needs to conduct a proper investigation. The assertion is losing a lot more of its bug-finding power than necessary to uncover the current cornercase; i really hope to preserve it instead.

Jan 24 2021, 3:13 PM · Restricted Project

Jan 22 2021

NoQ added a comment to D95249: [NFC] Disallow unused prefixes in clang/test/Analysis.

I added those for consistency but i think your effort is worth it so let's ditch them.

Jan 22 2021, 7:22 PM · Restricted Project

Jan 12 2021

NoQ added inline comments to D94476: [analyzer] Implement conversion from Clang diagnostics to PathDiagnostics..
Jan 12 2021, 1:50 PM · Restricted Project
NoQ updated the diff for D94476: [analyzer] Implement conversion from Clang diagnostics to PathDiagnostics..

Add a few comments here and there.

Jan 12 2021, 1:51 AM · Restricted Project
NoQ requested review of D94476: [analyzer] Implement conversion from Clang diagnostics to PathDiagnostics..
Jan 12 2021, 1:50 AM · Restricted Project

Jan 11 2021

NoQ added a comment to D93822: [clang-tidy] Add check for implicit widening of multiplication result.

this would be a great flow-sensitive check for the clang static analyzer

Jan 11 2021, 9:19 PM · Restricted Project, Restricted Project, Restricted Project
NoQ added a comment to D91898: [attributes] Add a facility for defining and enforcing a Trusted Computing Base..

Yup, i'm sorry. I even saw this failure locally but was like "this test doesn't look familiar, probably someone else broke it" which i wouldn't have said if i looked at it for more than 1 second as it's strikingly obvious. My bad.

Jan 11 2021, 7:18 AM · Restricted Project

Jan 7 2021

NoQ added a comment to D92634: [Analyzer] Diagnose signed integer overflow.

My code seems to think that a variable print_count has the value INT_MAX for some reason

Jan 7 2021, 2:48 AM · Restricted Project

Jan 6 2021

NoQ added inline comments to D91898: [attributes] Add a facility for defining and enforcing a Trusted Computing Base..
Jan 6 2021, 7:53 AM · Restricted Project
NoQ updated the diff for D91898: [attributes] Add a facility for defining and enforcing a Trusted Computing Base..

Drop broken attributes. Fix naming.

Jan 6 2021, 7:53 AM · Restricted Project
NoQ added inline comments to D91898: [attributes] Add a facility for defining and enforcing a Trusted Computing Base..
Jan 6 2021, 3:44 AM · Restricted Project
NoQ updated the diff for D91898: [attributes] Add a facility for defining and enforcing a Trusted Computing Base..

Handle conflicts across redeclarations! Fix typos and documentation formatting.

Jan 6 2021, 3:44 AM · Restricted Project

Jan 5 2021

NoQ added inline comments to D92634: [Analyzer] Diagnose signed integer overflow.
Jan 5 2021, 1:04 AM · Restricted Project
NoQ added a comment to D92634: [Analyzer] Diagnose signed integer overflow.

This patch adds a new core checker. I wouldn't be comfortable enabling it by default without a much more careful evaluation (than a single lit test). In particular, i'm worried about false positives due to constraint solving issues and our incorrect cast representation - it sounds like both of these may disproportionally affect this checker. I also still wonder about "intentional" use of signed overflows; it's likely that some developers would prefer to silence the check. At least we should have a rough idea about how loud it is.

Jan 5 2021, 12:59 AM · Restricted Project

Dec 24 2020

NoQ accepted D92039: [-Wcalled-once-parameter] Introduce 'called_once' attribute.

Amazing, thank you. I'm happy with the analysis and i have nothing more to say really :)

Dec 24 2020, 12:07 AM · Restricted Project

Dec 23 2020

NoQ added inline comments to D93224: [analyzer] Use the MacroExpansionContext for macro expansions in plists.
Dec 23 2020, 8:16 PM · Restricted Project
NoQ added inline comments to D91898: [attributes] Add a facility for defining and enforcing a Trusted Computing Base..
Dec 23 2020, 5:54 PM · Restricted Project
NoQ updated the diff for D91898: [attributes] Add a facility for defining and enforcing a Trusted Computing Base..

Add an error for conflicting attributes!

Dec 23 2020, 5:47 PM · Restricted Project

Dec 22 2020

NoQ added inline comments to D93595: [analyzer] Fix extraction of punned and known scalar SVals.
Dec 22 2020, 11:10 PM · Restricted Project
NoQ added inline comments to D93595: [analyzer] Fix extraction of punned and known scalar SVals.
Dec 22 2020, 11:05 PM · Restricted Project
NoQ added a comment to D93595: [analyzer] Fix extraction of punned and known scalar SVals.

I think you've found a very nice and compact 50% solution to the problem. I didn't think of this while i was looking for a proper fix. Very nice.

Dec 22 2020, 10:59 PM · Restricted Project