Page MenuHomePhabricator

riccibruno (Bruno Ricci)
User

Projects

User does not belong to any projects.

User Details

User Since
Jun 10 2018, 8:27 AM (83 w, 5 d)

Recent Activity

Fri, Jan 10

riccibruno added a comment to D71786: RFC: [Support] On Windows, add optional support for rpmalloc.

Am I the only one who is a little bit uncomfortable with including a replacement to the system allocator in LLVM?

No, you're not. I don't think it's ideal but I'm not sure what the alternative is to remove this bottleneck for ThinLTO on Windows.

It might be possible to use Win32 API (https://docs.microsoft.com/en-gb/windows/win32/api/heapapi/) HeapCreate() to create a heap for each thread and HeapAlloc() with HEAP_NO_SERIALIZE but HeapCreate() heaps are finite so you'd have to handle exhausting that and by then you're practically writing a new memory allocator...

Fri, Jan 10, 6:46 AM · Restricted Project

Thu, Jan 9

riccibruno committed rG002be6cfa2b1: [Support][NFC] Add an explicit unit test for Process::getPageSize() (authored by riccibruno).
[Support][NFC] Add an explicit unit test for Process::getPageSize()
Thu, Jan 9, 10:24 AM
riccibruno committed rG2fe45e029ddf: [Support][NFC] Make some helper functions "static" in Memory.inc (authored by riccibruno).
[Support][NFC] Make some helper functions "static" in Memory.inc
Thu, Jan 9, 9:55 AM
riccibruno committed rGed6daa2e1d32: [Support][NFC] Add a comment about the semantics of MF_HUGE_HINT flag (authored by riccibruno).
[Support][NFC] Add a comment about the semantics of MF_HUGE_HINT flag
Thu, Jan 9, 9:37 AM
riccibruno added a comment to D71786: RFC: [Support] On Windows, add optional support for rpmalloc.

Am I the only one who is a little bit uncomfortable with including a replacement to the system allocator in LLVM? It seems to me that this is something that is clearly under the responsibility of the C library. Now this might still be worth doing given the large performance improvement, but yuck...

Thu, Jan 9, 9:08 AM · Restricted Project

Wed, Jan 8

riccibruno added a comment to D71975: [Support] Support MF_HUGE_HINT on Linux and FreeBSD.

For FreeBSD, MAP_ALIGNED_SUPER probably isn't what you want. The default mmap() for MAP_ANON on FreeBSD tries to do what MAP_ALIGNED_SUPER does if the request is at least one large page in size first, and if that fails to find available address space, falls back to finding any possible virtual addresses (it does the two steps you are doing inside of mmap() itself). Specifying MAP_ALIGNED_SUPER tells mmap() to only try the first pass and fail without trying the second pass, but then the second call to mmap() that you would make as a result would just do both passes anyway.

Wed, Jan 8, 6:34 AM · Restricted Project
riccibruno added a comment to D71786: RFC: [Support] On Windows, add optional support for rpmalloc.

I have done some performance evaluations here and LLVM_ENABLE_RPMALLOC does seem to improve ThinLTO link times and CPU utilisation during ThinLTO.

There are two other things to note:
1). This also seems to improve compile time by around 5% for me. Presumably this is due to some other benefit of rpmalloc as (AFAIK) clang.exe does not use multiple threads.

Wed, Jan 8, 4:35 AM · Restricted Project

Fri, Jan 3

riccibruno planned changes to D71975: [Support] Support MF_HUGE_HINT on Linux and FreeBSD.
In D71975#1799355, @rnk wrote:

+@aganea, who added this flag.

Note that only a little test is added since the allocateMappedMemory interface is already well-tested. It seems difficult to reliably test that we got large pages. I am open to suggestions here (maybe with userfaultfd ?).

At a certain point, this would really be a test for the OS. That's pretty hard. I think this is fine without additional testing.

Fri, Jan 3, 12:42 PM · Restricted Project

Thu, Jan 2

riccibruno added inline comments to D71920: [AST] Refactor propagation of dependency bits. NFC.
Thu, Jan 2, 7:44 AM · Restricted Project

Mon, Dec 30

riccibruno added inline comments to D71975: [Support] Support MF_HUGE_HINT on Linux and FreeBSD.
Mon, Dec 30, 7:35 AM · Restricted Project

Sun, Dec 29

riccibruno retitled D71975: [Support] Support MF_HUGE_HINT on Linux and FreeBSD from [Support] Support MF_HUGE_HINT for Linux and FreeBSD to [Support] Support MF_HUGE_HINT on Linux and FreeBSD.
Sun, Dec 29, 11:38 AM · Restricted Project
riccibruno created D71975: [Support] Support MF_HUGE_HINT on Linux and FreeBSD.
Sun, Dec 29, 11:38 AM · Restricted Project
riccibruno added a comment to rG0460a6bdf2f2: [lldb][NFC] Remove most GetASTContext calls in AST metadata code.

The patches are about removing lldb_private::ClangASTContext::GetASTContext calls which are also expensive (The function sounds like a getter but it does a lookup in a mutex-protected global map that maps clang::ASTContext to lldb_private::ClangASTContext instances). Sorry for the confusion, ClangASTContext has obviously some questionable naming going on (and I haven't found the time to rename it to something less confusing).

Sun, Dec 29, 8:25 AM
riccibruno added a comment to rG0460a6bdf2f2: [lldb][NFC] Remove most GetASTContext calls in AST metadata code.

Not a comment on this change in particular, but I am wondering if this change was motivated by the performance implications of getASTContext() ?
DeclBase::getASTContext() is widely used because it looks cheap, but in fact it is not cheap at all since it does one of the slowest thing possible (following a linked-list of pointers).

Sun, Dec 29, 7:49 AM
riccibruno added inline comments to rGdc93540acbf0: Fix handling of newlines in clang-query.
Sun, Dec 29, 7:11 AM

Sun, Dec 22

riccibruno committed rG7394c15178ed: [Sema] SequenceChecker: C++17 sequencing rules for built-in operators <<, >>, . (authored by riccibruno).
[Sema] SequenceChecker: C++17 sequencing rules for built-in operators <<, >>, .
Sun, Dec 22, 4:56 AM
riccibruno closed D58297: [Sema] SequenceChecker: C++17 sequencing rules for built-in operators <<, >>, .*, ->*, =, op=.
Sun, Dec 22, 4:56 AM · Restricted Project
riccibruno committed rG8a571538dff6: [Sema] SequenceChecker: Fix handling of operator ||, && and ?: (authored by riccibruno).
[Sema] SequenceChecker: Fix handling of operator ||, && and ?:
Sun, Dec 22, 4:37 AM
riccibruno closed D57747: [Sema] SequenceChecker: Fix handling of operator ||, && and ?:.
Sun, Dec 22, 4:37 AM · Restricted Project
riccibruno committed rGb6eba3129291: [Sema] SequenceChecker: Add some comments + related small NFCs (authored by riccibruno).
[Sema] SequenceChecker: Add some comments + related small NFCs
Sun, Dec 22, 4:18 AM
riccibruno closed D57659: [Sema] SequenceChecker: Add some comments + related small NFCs in preparation of the following patches.
Sun, Dec 22, 4:18 AM · Restricted Project

Fri, Dec 20

riccibruno added a comment to D58579: [Sema] SequenceChecker: C++17 sequencing rule for call expressions..

@rsmith Could you take a look at this patch when you have some time? This is the last C++17 sequencing rule which is missing from SequenceChecker and is very similar to the other already accepted patches.

Fri, Dec 20, 2:10 PM · Restricted Project

Thu, Dec 19

riccibruno added inline comments to D71037: [Diagnostic] Add ftabstop to -Wmisleading-indentation.
Thu, Dec 19, 10:24 AM · Restricted Project
riccibruno added inline comments to D71037: [Diagnostic] Add ftabstop to -Wmisleading-indentation.
Thu, Dec 19, 10:23 AM · Restricted Project
riccibruno added a comment to D71714: [Sema] Fix -Warray-bounds false negative when casting an out-of-bounds array item.

These are not the only AST nodes representing cast expressions (there is also CXXFunctionalCastExpr, ...). What about replacing the IgnoreParenImpCasts() above by IgnoreParenCasts() ? Incidentally doing this uncovers another test (Parser/cxx-ambig-decl-expr.cpp ) where this diagnostic is triggered.

Thu, Dec 19, 10:13 AM · Restricted Project

Dec 18 2019

riccibruno changed the repository for D58579: [Sema] SequenceChecker: C++17 sequencing rule for call expressions. from rC Clang to rG LLVM Github Monorepo.
Dec 18 2019, 2:58 PM · Restricted Project
riccibruno updated the diff for D57660: [Sema] SequenceChecker: Handle references, members and structured bindings..

Add missing patch context

Dec 18 2019, 2:58 PM · Restricted Project

Dec 17 2019

riccibruno added a comment to D58579: [Sema] SequenceChecker: C++17 sequencing rule for call expressions..

Maybe @aaron.ballman / @rsmith could take a look? This patch blocks the whole patch stack.

I rebased it on top of the others already accepted patches. I just need to get back +w access to the GitHub repo to commit them, but this patch is not blocking them anymore.

Note that I am not entirely sure that the implementation in getMemoryLocation is the right way to do this; I think that this patch should be considered a work-in-progress.

Dec 17 2019, 9:45 AM · Restricted Project
riccibruno added a comment to D57660: [Sema] SequenceChecker: Handle references, members and structured bindings..

Note that I am not entirely sure that the implementation in getMemoryLocation/MemoryLocation is the right way to do this; I think that this patch should be considered a work-in-progress.

Dec 17 2019, 9:45 AM · Restricted Project
riccibruno added a comment to D58579: [Sema] SequenceChecker: C++17 sequencing rule for call expressions..

Maybe @aaron.ballman / @rsmith could take a look? This patch blocks the whole patch stack.

Dec 17 2019, 9:45 AM · Restricted Project
riccibruno removed a child revision for D57659: [Sema] SequenceChecker: Add some comments + related small NFCs in preparation of the following patches: D57660: [Sema] SequenceChecker: Handle references, members and structured bindings..
Dec 17 2019, 9:35 AM · Restricted Project
riccibruno edited parent revisions for D57660: [Sema] SequenceChecker: Handle references, members and structured bindings., added: 1; removed: 1.
Dec 17 2019, 9:35 AM · Restricted Project
riccibruno updated the diff for D57660: [Sema] SequenceChecker: Handle references, members and structured bindings..

I have factored out various NFCs which were present in this patch. This should make review easier.
Also addressed some inline comments.

Dec 17 2019, 9:35 AM · Restricted Project
riccibruno added a child revision for D58579: [Sema] SequenceChecker: C++17 sequencing rule for call expressions.: D57660: [Sema] SequenceChecker: Handle references, members and structured bindings..
Dec 17 2019, 9:35 AM · Restricted Project
riccibruno removed a child revision for D57661: [Sema] SequenceChecker: Add tests for references and members.: D57660: [Sema] SequenceChecker: Handle references, members and structured bindings..
Dec 17 2019, 9:24 AM · Restricted Project
riccibruno removed a parent revision for D57660: [Sema] SequenceChecker: Handle references, members and structured bindings.: D57661: [Sema] SequenceChecker: Add tests for references and members..
Dec 17 2019, 9:24 AM · Restricted Project
riccibruno updated the diff for D58579: [Sema] SequenceChecker: C++17 sequencing rule for call expressions..

Rebased on top of current master and D58297. Friendly ping !

Dec 17 2019, 9:24 AM · Restricted Project
riccibruno updated the diff for D58297: [Sema] SequenceChecker: C++17 sequencing rules for built-in operators <<, >>, .*, ->*, =, op=.

Rebased on top of current master and D57747. No need to look at it.

Dec 17 2019, 9:24 AM · Restricted Project
riccibruno edited parent revisions for D57747: [Sema] SequenceChecker: Fix handling of operator ||, && and ?:, added: 1; removed: 1.
Dec 17 2019, 9:14 AM · Restricted Project
riccibruno updated the diff for D57747: [Sema] SequenceChecker: Fix handling of operator ||, && and ?:.

Rebased on top of current master and D57659. No need to look at it.

Dec 17 2019, 9:14 AM · Restricted Project
riccibruno added a child revision for D57659: [Sema] SequenceChecker: Add some comments + related small NFCs in preparation of the following patches: D57747: [Sema] SequenceChecker: Fix handling of operator ||, && and ?:.
Dec 17 2019, 9:14 AM · Restricted Project
riccibruno removed a child revision for D57660: [Sema] SequenceChecker: Handle references, members and structured bindings.: D57747: [Sema] SequenceChecker: Fix handling of operator ||, && and ?:.
Dec 17 2019, 9:14 AM · Restricted Project
riccibruno updated the diff for D57659: [Sema] SequenceChecker: Add some comments + related small NFCs in preparation of the following patches.

Rebased on top of current master. No need to look at it.

Dec 17 2019, 9:14 AM · Restricted Project

Dec 12 2019

riccibruno added a comment to D57747: [Sema] SequenceChecker: Fix handling of operator ||, && and ?:.

Does the whole stack of patch need to be commited at once or maybe you can land them individually?

Dec 12 2019, 5:03 AM · Restricted Project
riccibruno added a comment to D57660: [Sema] SequenceChecker: Handle references, members and structured bindings..

I like this improvement. However I'm not a reviewer.

Dec 12 2019, 5:03 AM · Restricted Project

Aug 27 2019

riccibruno committed rGc397a266f01d: [clang] Ensure that statements, expressions and types are trivially destructible (authored by riccibruno).
[clang] Ensure that statements, expressions and types are trivially destructible
Aug 27 2019, 4:58 AM
riccibruno committed rG2535f04338c6: [clang] Ensure that comment classes are trivially destructible (authored by riccibruno).
[clang] Ensure that comment classes are trivially destructible
Aug 27 2019, 4:23 AM
riccibruno closed D66722: [clang] Ensure that comment classes are trivially destructible.
Aug 27 2019, 4:22 AM · Restricted Project

Aug 25 2019

riccibruno updated the diff for D66722: [clang] Ensure that comment classes are trivially destructible.

Also test that DeclInfo is trivially destructible.

Aug 25 2019, 1:59 PM · Restricted Project
riccibruno retitled D66646: [clang] Ensure that statements, expressions and types are trivially destructible from Ensure that statements, expressions and types are trivially destructible with a static_assert to [clang] Ensure that statements, expressions and types are trivially destructible.
Aug 25 2019, 12:01 PM · Restricted Project, Restricted Project
riccibruno created D66722: [clang] Ensure that comment classes are trivially destructible.
Aug 25 2019, 12:00 PM · Restricted Project
riccibruno added a comment to D66646: [clang] Ensure that statements, expressions and types are trivially destructible.

I was looking at SpecificBumpPtrAllocator, which knows it's type.
But if i look down the indirection, i think AllocatorBase::Allocate<T>()/AllocatorBase::Deallocate<T>() is the place.

Aug 25 2019, 4:19 AM · Restricted Project, Restricted Project

Aug 23 2019

riccibruno added a comment to D66646: [clang] Ensure that statements, expressions and types are trivially destructible.

SGTM, but i wonder if this should be done one level up, in BumpPtrAllocator itself?

Aug 23 2019, 6:02 AM · Restricted Project, Restricted Project
riccibruno created D66646: [clang] Ensure that statements, expressions and types are trivially destructible.
Aug 23 2019, 5:48 AM · Restricted Project, Restricted Project

Aug 22 2019

riccibruno added a comment to D66397: [Diagnostics] Improve -Wxor-used-as-pow.

This should not warn. Please verify that patch was applied correctly and you use newly built clang with this patch. (I use arc patch DXXXXX)

Aug 22 2019, 6:52 AM · Restricted Project

Aug 21 2019

riccibruno added a comment to D66397: [Diagnostics] Improve -Wxor-used-as-pow.

Is the test up-to-date ? I tried to apply the patch locally and I get a bunch of failures :

Aug 21 2019, 5:36 AM · Restricted Project

Aug 20 2019

riccibruno added a comment to D66481: [C++20] Support for lambdas in unevaluated context.

Can you submit the patch with the full context (ie: git diff -U9999999) ?

Aug 20 2019, 8:41 AM · Restricted Project
riccibruno updated the diff for D58579: [Sema] SequenceChecker: C++17 sequencing rule for call expressions..

Rebased

Aug 20 2019, 8:25 AM · Restricted Project
riccibruno updated the diff for D58297: [Sema] SequenceChecker: C++17 sequencing rules for built-in operators <<, >>, .*, ->*, =, op=.

Rebased

Aug 20 2019, 8:24 AM · Restricted Project
riccibruno updated the diff for D57747: [Sema] SequenceChecker: Fix handling of operator ||, && and ?:.

Rebased

Aug 20 2019, 8:24 AM · Restricted Project
riccibruno updated the diff for D57660: [Sema] SequenceChecker: Handle references, members and structured bindings..

Rebased

Aug 20 2019, 8:24 AM · Restricted Project
riccibruno updated the diff for D57659: [Sema] SequenceChecker: Add some comments + related small NFCs in preparation of the following patches.

Rebased. Thanks for the review @xbolva00 !

Aug 20 2019, 8:15 AM · Restricted Project
riccibruno added a comment to D57660: [Sema] SequenceChecker: Handle references, members and structured bindings..

Added some reviewers

Patch improves suboptimal diagnostic, which misses bugs like:
https://bugs.llvm.org/show_bug.cgi?id=43052

Aug 20 2019, 6:23 AM · Restricted Project

Aug 13 2019

riccibruno added a comment to D61027: Fix crash on switch conditions of non-integer types in templates.

I think that you have to run check-clang-tools. I too was surprised that it was not included in check-clang.

Aug 13 2019, 1:30 PM · Restricted Project

Aug 12 2019

riccibruno added a comment to D65591: [AST] Add a flag indicating if any subexpression had errors.

It seems that these two options are not exactly the same right ? The ContainsError bit is useful to quickly answer "Does this expression contains an invalid sub-expression" without doing the search, while adding an ErrorExpr node is useful to note that this sub-expression is invalid (and as Aaron says the hypothetical ErrorExpr node can carry more info about the error).

That's true. I had figured that answering "does this expression contain an invalid sub-expression" could be implemented with a walk of the expression tree rather than consuming a bit. To consumers of containsErrors(), there shouldn't be much difference aside from performance (and that may be sufficient reason to go with a bit, but I think I'd like to see performance measurements that show the bit is necessary).

Are expression bits scarce?
We don't have any checks if expressions contain errors now, we simply drop too many invalid expressions and never put them into the AST.
It's impossible to do the measurements at this point, but it would be nice if adding those checks was cheap.

Aug 12 2019, 7:55 AM · Restricted Project
riccibruno added a comment to D65591: [AST] Add a flag indicating if any subexpression had errors.

It seems that these two options are not exactly the same right ? The ContainsError bit is useful to quickly answer "Does this expression contains an invalid sub-expression" without doing the search, while adding an ErrorExpr node is useful to note that this sub-expression is invalid (and as Aaron says the hypothetical ErrorExpr node can carry more info about the error).

That's true. I had figured that answering "does this expression contain an invalid sub-expression" could be implemented with a walk of the expression tree rather than consuming a bit. To consumers of containsErrors(), there shouldn't be much difference aside from performance (and that may be sufficient reason to go with a bit, but I think I'd like to see performance measurements that show the bit is necessary).

Aug 12 2019, 6:50 AM · Restricted Project
riccibruno added a comment to D65591: [AST] Add a flag indicating if any subexpression had errors.

It seems that these two options are not exactly the same right ? The ContainsError bit is useful to quickly answer "Does this expression contains an invalid sub-expression" without doing the search, while adding an ErrorExpr node is useful to note that this sub-expression is invalid (and as Aaron says the hypothetical ErrorExpr node can carry more info about the error).

Aug 12 2019, 6:26 AM · Restricted Project

Jul 27 2019

riccibruno added inline comments to D63276: [AST] Add FunctionDecl::getParametersSourceRange().
Jul 27 2019, 9:37 AM · Restricted Project

May 15 2019

riccibruno added a comment to D60956: [Sema] Fix the lookup for a declaration conflicting with an enumerator.

Ping :)

May 15 2019, 11:52 AM · Restricted Project

May 8 2019

riccibruno updated the diff for D60956: [Sema] Fix the lookup for a declaration conflicting with an enumerator.

Address Aaron's comments.

May 8 2019, 5:28 AM · Restricted Project
riccibruno added inline comments to D60910: [WIP] Dumping the AST to JSON.
May 8 2019, 5:10 AM

May 2 2019

riccibruno added inline comments to D61432: Non-8-bit bytes showcase.
May 2 2019, 7:18 AM · Restricted Project

May 1 2019

riccibruno added a comment to D61389: Bump DIAG_SIZE_SEMA up to 4000.

Already done in r359702 :)

May 1 2019, 12:17 PM · Restricted Project

Apr 30 2019

riccibruno added inline comments to D61288: [Diagnostics] Implemented support for -Wswitch-default.
Apr 30 2019, 5:04 AM · Restricted Project

Apr 29 2019

riccibruno added a comment to D60665: [Sema] ADL: Template arguments in a template-id naming a set of overloaded functions (part of CWG 997).

@rsmith Do you have an opinion on whether this ADL rule should be implemented ?

Apr 29 2019, 5:26 PM · Restricted Project
riccibruno added a comment to D61288: [Diagnostics] Implemented support for -Wswitch-default.

Is it intentional to warn even if all the cases are covered ?

Apr 29 2019, 5:20 PM · Restricted Project
riccibruno added inline comments to D60956: [Sema] Fix the lookup for a declaration conflicting with an enumerator.
Apr 29 2019, 5:17 PM · Restricted Project
riccibruno updated the diff for D60956: [Sema] Fix the lookup for a declaration conflicting with an enumerator.
Apr 29 2019, 5:11 PM · Restricted Project
riccibruno added a comment to D61225: [COFF, ARM64] Align global symbol by size for ARM64 MSVC ABI.

Since this is target-specific, is it right to put this here ?

Apr 29 2019, 1:20 PM · Restricted Project, Restricted Project

Apr 25 2019

riccibruno planned changes to D60956: [Sema] Fix the lookup for a declaration conflicting with an enumerator.
Apr 25 2019, 6:05 AM · Restricted Project

Apr 23 2019

riccibruno resigned from D60523: [clang] Don't segfault on incorrect using directive (PR41400).

I will take a look at this tomorrow, I know that it is annoying to get no feedback!

Apr 23 2019, 2:20 PM · Restricted Project, Restricted Project
riccibruno added inline comments to D60956: [Sema] Fix the lookup for a declaration conflicting with an enumerator.
Apr 23 2019, 10:50 AM · Restricted Project
riccibruno abandoned D60778: Make precompiled headers reproducible by switching OpenCL extension to std::map.
Apr 23 2019, 9:30 AM
riccibruno commandeered D60778: Make precompiled headers reproducible by switching OpenCL extension to std::map.

Closing this since the issue was fixed in r358674.

Apr 23 2019, 9:30 AM
riccibruno added a comment to D60956: [Sema] Fix the lookup for a declaration conflicting with an enumerator.

Added a test which exposes a new problem that this patch incidentally solves (see N_conflicting_namespace_alias). Because of the using directive using namespace M;, the namespace alias i for the namespace Q is found in the redeclaration lookup. Before this patch, since getAsSingle used internally getUnderlyingDecl(), PrevDecl was for the NamespaceDecl for Q, and not for the VarDecl for Q::i. Then the declaration for the enumerator i was mistakenly rejected since Q is in the same scope.

Apr 23 2019, 9:16 AM · Restricted Project
riccibruno added inline comments to D60956: [Sema] Fix the lookup for a declaration conflicting with an enumerator.
Apr 23 2019, 9:12 AM · Restricted Project
riccibruno updated the diff for D60956: [Sema] Fix the lookup for a declaration conflicting with an enumerator.
  • Added a test (see N_shadow) for the behavior of Wshadow. This test showed that I forgot to change CheckShadow(New, PrevDecl, R); to CheckShadow(New, PrevDecl->getUnderlyingDecl(), R); to match change in the condition of the if statement.
Apr 23 2019, 9:01 AM · Restricted Project

Apr 22 2019

riccibruno committed rGaf3e50ad4083: [Sema] ADL: Associated namespaces for class types and enumeration types (CWG… (authored by riccibruno).
[Sema] ADL: Associated namespaces for class types and enumeration types (CWG…
Apr 22 2019, 5:18 AM
riccibruno added inline comments to D60956: [Sema] Fix the lookup for a declaration conflicting with an enumerator.
Apr 22 2019, 5:08 AM · Restricted Project
riccibruno committed rG1f30dba14daa: [Sema][NFC] Add more tests for the behavior of argument-dependent name lookup (authored by riccibruno).
[Sema][NFC] Add more tests for the behavior of argument-dependent name lookup
Apr 22 2019, 4:40 AM

Apr 21 2019

riccibruno accepted D60570: [Sema] Add more tests for the behavior of argument-dependent name lookup.

@Quuxplusone Do you have other objections apart from the template-id issue ? If not, since D60573 depends on this patch, I would like to commit this with a comment explaining the issue instead of the FIXME.

Sure, go for it!

Apr 21 2019, 5:09 PM · Restricted Project, Restricted Project
riccibruno added a reviewer for D60523: [clang] Don't segfault on incorrect using directive (PR41400): riccibruno.

I will take a look at this tomorrow, I know that it is annoying to get no feedback!

Apr 21 2019, 2:52 PM · Restricted Project, Restricted Project
riccibruno added a comment to D60570: [Sema] Add more tests for the behavior of argument-dependent name lookup.

@Quuxplusone Do you have other objections apart from the template-id issue ? If not, since D60573 depends on this patch, I would like to commit this with a comment explaining the issue instead of the FIXME.

Apr 21 2019, 2:46 PM · Restricted Project, Restricted Project
riccibruno created D60956: [Sema] Fix the lookup for a declaration conflicting with an enumerator.
Apr 21 2019, 2:42 PM · Restricted Project
riccibruno added inline comments to D50360: [Concepts] Requires Expressions.
Apr 21 2019, 10:25 AM · Restricted Project
riccibruno committed rGba7ffae0c564: [Sema][MSVC] Fix bogus microsoft-pure-definition warning on member function of… (authored by riccibruno).
[Sema][MSVC] Fix bogus microsoft-pure-definition warning on member function of…
Apr 21 2019, 6:12 AM
riccibruno accepted D29707: Fix improper microsoft-pure-definition warning on template class.

This looks reasonable to me (although I think that the test should be in SemaCXX/ and not in Parser/, but the test for the non-template case is already in Parser/ so ok).

Apr 21 2019, 5:48 AM · Restricted Project

Apr 20 2019

riccibruno added a comment to D60910: [WIP] Dumping the AST to JSON.

A few comments/questions:

  1. How stable is the format going to be, and how much state is going to be exposed ?

I don't expect it to be particularly stable (I'm not suggesting we conform to some particular schema) and for my own needs, I'm happy enough if new Clang releases break us due to new, deleted, or renamed information. I need to expose as much state as required for our research team to import the data and reason about the AST; I'd guess it's going to be roughly the same as the textual dumper, but different in spots.

Apr 20 2019, 10:03 AM
riccibruno added a comment to D60934: [clang] adding explicit(bool) from c++2a.

This patch certainly took a few hours to write. Can you spend 5 minutes on making the summary readable (spelling, capitalization, formatting, well-formed sentences, ...) ?

Apr 20 2019, 8:37 AM · Restricted Project, Restricted Project
riccibruno updated subscribers of D60910: [WIP] Dumping the AST to JSON.

A few comments/questions:

Apr 20 2019, 5:21 AM