r332817 - Print the qualified name when dumping deserialized decls.

2018-05-20 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Sun May 20 02:38:52 2018 New Revision: 332817 URL: http://llvm.org/viewvc/llvm-project?rev=332817&view=rev Log: Print the qualified name when dumping deserialized decls. This is useful to understand and debug the lazy template specializations used in the pch and modules.

r316022 - Expose ConsumeAnyToken interface to external clients.

2017-10-17 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Tue Oct 17 12:38:57 2017 New Revision: 316022 URL: http://llvm.org/viewvc/llvm-project?rev=316022&view=rev Log: Expose ConsumeAnyToken interface to external clients. Modified: cfe/trunk/include/clang/Parse/Parser.h Modified: cfe/trunk/include/clang/Parse/Parser.h URL:

r316444 - [modules] Add a regression test for merging anon decls in extern C contexts.

2017-10-24 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Tue Oct 24 07:52:35 2017 New Revision: 316444 URL: http://llvm.org/viewvc/llvm-project?rev=316444&view=rev Log: [modules] Add a regression test for merging anon decls in extern C contexts. Added: cfe/trunk/test/Modules/merge-anon-in-extern_c.cpp Added: cfe/trunk/test/

r305089 - Repair 2010-05-31-palignr.c test

2017-06-09 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Fri Jun 9 11:42:26 2017 New Revision: 305089 URL: http://llvm.org/viewvc/llvm-project?rev=305089&view=rev Log: Repair 2010-05-31-palignr.c test This test was silently failing since a long time because it failed to include stdlib.h (as it's running in a freestanding enviro

Re: r305103 - Bringt back -triple so the test passes on non-x86.

2017-06-09 Thread Vassil Vassilev via cfe-commits
Thanks! Maybe we could run it on any -triple x86_64... On 09/06/17 21:47, Benjamin Kramer via cfe-commits wrote: Author: d0k Date: Fri Jun 9 14:47:36 2017 New Revision: 305103 URL: http://llvm.org/viewvc/llvm-project?rev=305103&view=rev Log: Bringt back -triple so the test passes on non-x86.

r305118 - [modules] Fix that global delete operator get's assigned to a submodule.

2017-06-09 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Fri Jun 9 16:36:28 2017 New Revision: 305118 URL: http://llvm.org/viewvc/llvm-project?rev=305118&view=rev Log: [modules] Fix that global delete operator get's assigned to a submodule. n the current local-submodule-visibility mode, as soon as we discover a virtual destruct

r305120 - [modules] D29951: Load lazily the template specialization in multi-module setups.

2017-06-09 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Fri Jun 9 16:54:18 2017 New Revision: 305120 URL: http://llvm.org/viewvc/llvm-project?rev=305120&view=rev Log: [modules] D29951: Load lazily the template specialization in multi-module setups. Currently, we load all template specialization if we have more than one module

[clang-tools-extra] r305125 - [clang-tidy] D33930: Do not pick up by default the LLVM style if passing -format.

2017-06-09 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Fri Jun 9 17:23:03 2017 New Revision: 305125 URL: http://llvm.org/viewvc/llvm-project?rev=305125&view=rev Log: [clang-tidy] D33930: Do not pick up by default the LLVM style if passing -format. This adds a new flag -style which is passed to clang-apply-replacements and de

r305460 - Revert "Load lazily the template specialization in multi-module setups."

2017-06-15 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Thu Jun 15 06:05:32 2017 New Revision: 305460 URL: http://llvm.org/viewvc/llvm-project?rev=305460&view=rev Log: Revert "Load lazily the template specialization in multi-module setups." This broke our libcxx modules builds. Modified: cfe/trunk/lib/Serialization/ASTRead

r305799 - D31187: Fix removal of out-of-line definitions.

2017-06-20 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Tue Jun 20 09:59:57 2017 New Revision: 305799 URL: http://llvm.org/viewvc/llvm-project?rev=305799&view=rev Log: D31187: Fix removal of out-of-line definitions. Consider: struct MyClass { void f() {} } MyClass::f(){} // expected error redefinition of f. #1 Some clients

r320763 - D40901: Refactor lazy loading of template specializations. NFC

2017-12-14 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Thu Dec 14 15:30:18 2017 New Revision: 320763 URL: http://llvm.org/viewvc/llvm-project?rev=320763&view=rev Log: D40901: Refactor lazy loading of template specializations. NFC Modified: cfe/trunk/include/clang/AST/DeclTemplate.h cfe/trunk/lib/AST/DeclTemplate.cpp M

r347304 - Allow force updating the NumCreatedFIDsForFileID.

2018-11-20 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Tue Nov 20 05:53:20 2018 New Revision: 347304 URL: http://llvm.org/viewvc/llvm-project?rev=347304&view=rev Log: Allow force updating the NumCreatedFIDsForFileID. Our internal clients implement parsing cache based on FileID. In order for the Preprocessor to reenter the cach

r311843 - D34444: Teach codegen to work in incremental processing mode.

2017-08-27 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Sun Aug 27 03:58:03 2017 New Revision: 311843 URL: http://llvm.org/viewvc/llvm-project?rev=311843&view=rev Log: D3: Teach codegen to work in incremental processing mode. When isIncrementalProcessingEnabled is on we might want to produce multiple llvm::Modules. This pat

r311844 - D34059: Get the file name for the symbol from the Module, not the SourceManager.

2017-08-27 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Sun Aug 27 04:27:30 2017 New Revision: 311844 URL: http://llvm.org/viewvc/llvm-project?rev=311844&view=rev Log: D34059: Get the file name for the symbol from the Module, not the SourceManager. This allows multi-module / incremental compilation environments to have unique i

r311845 - Add forgotten file in r311844.

2017-08-27 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Sun Aug 27 04:31:01 2017 New Revision: 311845 URL: http://llvm.org/viewvc/llvm-project?rev=311845&view=rev Log: Add forgotten file in r311844. Added: cfe/trunk/unittests/CodeGen/IncrementalProcessingTest.cpp Added: cfe/trunk/unittests/CodeGen/IncrementalProcessingTest

r365153 - [modules] Add PP callbacks for entering and leaving a submodule.

2019-07-04 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Thu Jul 4 12:06:52 2019 New Revision: 365153 URL: http://llvm.org/viewvc/llvm-project?rev=365153&view=rev Log: [modules] Add PP callbacks for entering and leaving a submodule. Modified: cfe/trunk/include/clang/Lex/PPCallbacks.h cfe/trunk/lib/Lex/PPLexerChange.cpp

r335853 - [ODRHash] Do not rely on Type* when computing the hash.

2018-06-28 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Thu Jun 28 06:28:44 2018 New Revision: 335853 URL: http://llvm.org/viewvc/llvm-project?rev=335853&view=rev Log: [ODRHash] Do not rely on Type* when computing the hash. ODRHash aims to provide Cross-TU stable hashing. Making clang::Type pointer part of the hash connects (re

r337353 - [modules] Print input files when -module-file-info file switch is passed.

2018-07-17 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Tue Jul 17 23:49:33 2018 New Revision: 337353 URL: http://llvm.org/viewvc/llvm-project?rev=337353&view=rev Log: [modules] Print input files when -module-file-info file switch is passed. This patch improves traceability of duplicated header files which end up in multiple pc

Re: [PATCH] D31702: Append -w when LLVM_ENABLE_WARNINGS is Off.

2020-06-04 Thread Vassil Vassilev via cfe-commits
On 6/4/20 6:58 AM, Sean Silva wrote: Can we revert this? In our downstream project we were bitten by this: https://github.com/google/mlir-npcomp/commit/cd7258dbd48bd9254c6741cab2d3f4e36cbd3c84 It seems that now by default anybody that depends on LLVM with CMake will globally get a `-w` passe

[clang] 46ea465 - Return false if the identifier is not in the global module index.

2020-06-22 Thread Vassil Vassilev via cfe-commits
Author: Vassil Vassilev Date: 2020-06-22T08:03:11Z New Revision: 46ea465b5b741fb0bf6e2cedd5cd6bf7026cd3c6 URL: https://github.com/llvm/llvm-project/commit/46ea465b5b741fb0bf6e2cedd5cd6bf7026cd3c6 DIFF: https://github.com/llvm/llvm-project/commit/46ea465b5b741fb0bf6e2cedd5cd6bf7026cd3c6.diff LO

Re: [PATCH] D24916: [analyzer] Extend bug reports with extra notes - CloneChecker

2016-09-26 Thread Vassil Vassilev via cfe-commits
v.g.vassilev added inline comments. Comment at: lib/StaticAnalyzer/Checkers/CloneChecker.cpp:102 @@ -95,5 +101,3 @@ // as a note. -DiagEngine.Report(Group.Sequences.front().getStartLoc(), WarnID); -for (unsigned i = 1; i < Group.Sequences.size(); ++i) { - DiagEng

[PATCH] D24508: PR28752: Do not instantiate var decls which are not visible.

2016-10-05 Thread Vassil Vassilev via cfe-commits
v.g.vassilev updated this revision to Diff 73688. v.g.vassilev added a comment. Address some comments and publish current progress. https://reviews.llvm.org/D24508 Files: include/clang/AST/Decl.h lib/AST/Decl.cpp lib/Sema/SemaTemplate.cpp lib/Sema/SemaTemplateInstantiateDecl.cpp lib/S

r283444 - [modules] Allow VarDecls with initializers to use special var abbrev.

2016-10-06 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Thu Oct 6 08:04:54 2016 New Revision: 283444 URL: http://llvm.org/viewvc/llvm-project?rev=283444&view=rev Log: [modules] Allow VarDecls with initializers to use special var abbrev. Update storage sizes to fit the (past) changes in the VarDecl's data model. Update some com

r283448 - Allocate after the early exit checks. NFC.

2016-10-06 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Thu Oct 6 08:18:06 2016 New Revision: 283448 URL: http://llvm.org/viewvc/llvm-project?rev=283448&view=rev Log: Allocate after the early exit checks. NFC. Modified: cfe/trunk/lib/Serialization/ASTReaderDecl.cpp Modified: cfe/trunk/lib/Serialization/ASTReaderDecl.cpp U

[PATCH] D24508: PR28752: Do not instantiate var decls which are not visible.

2016-10-06 Thread Vassil Vassilev via cfe-commits
v.g.vassilev updated this revision to Diff 73803. v.g.vassilev marked 4 inline comments as done. v.g.vassilev added a comment. Rebase, comments some more fixes. https://reviews.llvm.org/D24508 Files: include/clang/AST/Decl.h lib/AST/Decl.cpp lib/Sema/SemaDecl.cpp lib/Sema/SemaTemplate.c

[PATCH] D24508: PR28752: Do not instantiate var decls which are not visible.

2016-10-06 Thread Vassil Vassilev via cfe-commits
v.g.vassilev added inline comments. > rsmith wrote in SemaTemplate.cpp:509 > This function still appears to be able to return true (indicating to the > caller that a diagnostic was produced) without actually producing a > diagnostic. Is it better now? > rsmith wrote in SemaTemplate.cpp:505 >

[PATCH] D24508: PR28752: Do not instantiate var decls which are not visible.

2016-10-10 Thread Vassil Vassilev via cfe-commits
v.g.vassilev updated this revision to Diff 74129. v.g.vassilev marked 3 inline comments as done. v.g.vassilev added a comment. Address comments. https://reviews.llvm.org/D24508 Files: include/clang/AST/Decl.h lib/AST/Decl.cpp lib/Sema/SemaDecl.cpp lib/Sema/SemaTemplate.cpp lib/Sema/Se

r283882 - [modules] PR28752: Do not instantiate variable declarations which are not visible.

2016-10-11 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Tue Oct 11 08:57:36 2016 New Revision: 283882 URL: http://llvm.org/viewvc/llvm-project?rev=283882&view=rev Log: [modules] PR28752: Do not instantiate variable declarations which are not visible. https://reviews.llvm.org/D24508 Patch developed in collaboration with Richar

[PATCH] D24508: PR28752: Do not instantiate var decls which are not visible.

2016-10-11 Thread Vassil Vassilev via cfe-commits
v.g.vassilev marked 2 inline comments as done. v.g.vassilev added a comment. Landed in r283882. Comment at: include/clang/AST/Decl.h:1222 + void demoteThisDefinitionToDeclaration() { +assert (!isThisDeclarationADemotedDefinition() && "Aleady demoted!"); +assert (isThis

r283887 - r283882 followup. Don't demote ParmVarDecls. This should fix our module builds.

2016-10-11 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Tue Oct 11 10:09:26 2016 New Revision: 283887 URL: http://llvm.org/viewvc/llvm-project?rev=283887&view=rev Log: r283882 followup. Don't demote ParmVarDecls. This should fix our module builds. Modified: cfe/trunk/lib/Sema/SemaDecl.cpp Modified: cfe/trunk/lib/Sema/SemaD

r283890 - Revert r283887 and r283882, until the issue is understood and fixed.

2016-10-11 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Tue Oct 11 10:51:06 2016 New Revision: 283890 URL: http://llvm.org/viewvc/llvm-project?rev=283890&view=rev Log: Revert r283887 and r283882, until the issue is understood and fixed. Removed: cfe/trunk/test/Modules/Inputs/PR28752/ cfe/trunk/test/Modules/pr28752.cpp M

[PATCH] D24508: PR28752: Do not instantiate var decls which are not visible.

2016-10-12 Thread Vassil Vassilev via cfe-commits
v.g.vassilev updated this revision to Diff 74353. v.g.vassilev marked 2 inline comments as done. v.g.vassilev added a comment. We should not access the IsThisDeclarationADemotedDefinition bits if the decl is ParmVarDecl. https://reviews.llvm.org/D24508 Files: include/clang/AST/Decl.h lib/A

r284008 - Reinstate r283887 and r283882.

2016-10-12 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Wed Oct 12 06:57:08 2016 New Revision: 284008 URL: http://llvm.org/viewvc/llvm-project?rev=284008&view=rev Log: Reinstate r283887 and r283882. Original message: "[modules] PR28752: Do not instantiate variable declarations which are not visible. https://reviews.llvm.org/D

[PATCH] D24508: PR28752: Do not instantiate var decls which are not visible.

2016-10-12 Thread Vassil Vassilev via cfe-commits
v.g.vassilev closed this revision. v.g.vassilev marked an inline comment as done. v.g.vassilev added a comment. Relanded in r284008. https://reviews.llvm.org/D24508 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bi

Re: r284008 - Reinstate r283887 and r283882.

2016-10-12 Thread Vassil Vassilev via cfe-commits
caused random behavior. Cheers, Vassil And what was the issue that caused the revert? Thanks, Manman On Oct 12, 2016, at 4:57 AM, Vassil Vassilev via cfe-commits wrote: Author: vvassilev Date: Wed Oct 12 06:57:08 2016 New Revision: 284008 URL: http://llvm.org/viewvc/llvm-project?rev=284008

[PATCH] D7842: Make clang-format-diff compatible with Python 3.4

2016-10-13 Thread Vassil Vassilev via cfe-commits
v.g.vassilev added a subscriber: djasper. v.g.vassilev added a comment. I think @djasper could help with this review. https://reviews.llvm.org/D7842 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listin

[PATCH] D7842: Make clang-format-diff compatible with Python 3.4

2016-10-13 Thread Vassil Vassilev via cfe-commits
v.g.vassilev added a comment. This patch needs rebasing. https://reviews.llvm.org/D7842 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D20785: Python 3.5 compatibility for clang-format.py

2016-10-13 Thread Vassil Vassilev via cfe-commits
v.g.vassilev added a comment. The print related changes were added in in r280240 (https://reviews.llvm.org/D23319). Could you rebase the patch? Repository: rL LLVM https://reviews.llvm.org/D20785 ___ cfe-commits mailing list cfe-commits@lists.ll

[PATCH] D20785: Python 3.5 compatibility for clang-format.py

2016-10-13 Thread Vassil Vassilev via cfe-commits
v.g.vassilev closed this revision. v.g.vassilev added a comment. Thanks I am closing it! Repository: rL LLVM https://reviews.llvm.org/D20785 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cf

[PATCH] D25602: Do not reset TUScope when we are in incremental processing mode.

2016-10-14 Thread Vassil Vassilev via cfe-commits
v.g.vassilev created this revision. v.g.vassilev added a reviewer: rsmith. v.g.vassilev added a subscriber: cfe-commits. We are using this in the context of cling, where we keep the compiler instance alive after EOF. The incremental processing part in clang was done mostly by me and this patch

[PATCH] D25604: Add support for Mageia Linux

2016-10-14 Thread Vassil Vassilev via cfe-commits
v.g.vassilev created this revision. v.g.vassilev added reviewers: chandlerc, rsmith. v.g.vassilev added a subscriber: cfe-commits. v.g.vassilev set the repository for this revision to rL LLVM. Repository: rL LLVM https://reviews.llvm.org/D25604 Files: lib/Driver/ToolChains.cpp Index: lib/D

Re: r284284 - Reinstate r284008 reverted in r284081, with two fixes:

2016-10-15 Thread Vassil Vassilev via cfe-commits
Thanks! When calling makeMergedDefinitionVisible shouldn't we get the template instantiation pattern? On 14/10/16 23:41, Richard Smith via cfe-commits wrote: Author: rsmith Date: Fri Oct 14 16:41:24 2016 New Revision: 284284 URL: http://llvm.org/viewvc/llvm-project?rev=284284&view=rev Log: Re

Re: r284284 - Reinstate r284008 reverted in r284081, with two fixes:

2016-10-15 Thread Vassil Vassilev via cfe-commits
It seems that we are still missing a piece, because this broke the libstdc++ selfhost: http://lab.llvm.org:8011/builders/clang-x86_64-linux-selfhost-modules-2/builds/5891 On 14/10/16 23:41, Richard Smith via cfe-commits wrote: Author: rsmith Date: Fri Oct 14 16:41:24 2016 New Revision: 284284

r284372 - Do not reset TUScope when we are in incremental processing mode.

2016-10-17 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Mon Oct 17 05:15:25 2016 New Revision: 284372 URL: http://llvm.org/viewvc/llvm-project?rev=284372&view=rev Log: Do not reset TUScope when we are in incremental processing mode. Patch by Axel Naumann! Reviewed by Richard Smith and me. Modified: cfe/trunk/lib/Sema/Sema

[PATCH] D25602: Do not reset TUScope when we are in incremental processing mode.

2016-10-17 Thread Vassil Vassilev via cfe-commits
v.g.vassilev closed this revision. v.g.vassilev added a comment. Landed in r284372. https://reviews.llvm.org/D25602 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Re: r284382 - Revert "Reinstate r281429, reverted in r281452, with a fix for its mishandling of"

2016-10-17 Thread Vassil Vassilev via cfe-commits
I was just to commit a fix :( On 17/10/16 15:00, Benjamin Kramer via cfe-commits wrote: Author: d0k Date: Mon Oct 17 08:00:44 2016 New Revision: 284382 URL: http://llvm.org/viewvc/llvm-project?rev=284382&view=rev Log: Revert "Reinstate r281429, reverted in r281452, with a fix for its mishandling

r319037 - Constify. NFC.

2017-11-27 Thread Vassil Vassilev via cfe-commits
Author: vvassilev Date: Mon Nov 27 07:32:00 2017 New Revision: 319037 URL: http://llvm.org/viewvc/llvm-project?rev=319037&view=rev Log: Constify. NFC. Modified: cfe/trunk/include/clang/Sema/Sema.h Modified: cfe/trunk/include/clang/Sema/Sema.h URL: http://llvm.org/viewvc/llvm-project/cfe/tru

Re: r305110 - [ODRHash] Add support for TemplateArgument types.

2017-12-08 Thread Vassil Vassilev via cfe-commits
Hi Richard,   Is there a way to get an ODRHashing which is stable across translation units? I'd like to use the TemplateArgument ODRHash to lookup template specializations and deserialize them only if they are required. Many thanks! Vassil On 6/9/17 11:00 PM, Richard Trieu via cfe-commits wr

Re: r305110 - [ODRHash] Add support for TemplateArgument types.

2017-12-10 Thread Vassil Vassilev via cfe-commits
On 12/8/17 9:14 PM, Richard Trieu wrote: Vassil, It depends on which parts of the AST you want to be stable.  The ODRHashing is stable across TU's, but it may depend on information that you don't want to be part of the hash.  For instance, if you have "using F = float;" in you code, then the

[clang] [clang-repl] Fix BUILD_SHARED_LIBS symbols from libclangInterpreter on MinGW (PR #71393)

2023-11-06 Thread Vassil Vassilev via cfe-commits
https://github.com/vgvassilev approved this pull request. Thank you, @mstorsjo! https://github.com/llvm/llvm-project/pull/71393 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-06 Thread Vassil Vassilev via cfe-commits
@@ -56,26 +69,151 @@ class ReplCompletionConsumer : public CodeCompleteConsumer { std::shared_ptr CCAllocator; CodeCompletionTUInfo CCTUInfo; std::vector &Results; + ReplCodeCompleter &CC; +}; + +/* + The abstract class CompletionContextHandler contains four interfaces

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-06 Thread Vassil Vassilev via cfe-commits
@@ -56,26 +69,151 @@ class ReplCompletionConsumer : public CodeCompleteConsumer { std::shared_ptr CCAllocator; CodeCompletionTUInfo CCTUInfo; std::vector &Results; + ReplCodeCompleter &CC; +}; + +/* + The abstract class CompletionContextHandler contains four interfaces

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-06 Thread Vassil Vassilev via cfe-commits
@@ -23,8 +23,27 @@ namespace clang { class CodeCompletionResult; class CompilerInstance; -void codeComplete(CompilerInstance *InterpCI, llvm::StringRef Content, - unsigned Line, unsigned Col, const CompilerInstance *ParentCI, - std::vector &C

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-06 Thread Vassil Vassilev via cfe-commits
@@ -37,12 +40,22 @@ clang::CodeCompleteOptions getClangCompleteOpts() { return Opts; } +class CodeCompletionSubContext { vgvassilev wrote: I cannot seem to find the uses of this class. https://github.com/llvm/llvm-project/pull/67349 ___

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-06 Thread Vassil Vassilev via cfe-commits
@@ -56,26 +69,151 @@ class ReplCompletionConsumer : public CodeCompleteConsumer { std::shared_ptr CCAllocator; CodeCompletionTUInfo CCTUInfo; std::vector &Results; + ReplCodeCompleter &CC; +}; + +/* + The abstract class CompletionContextHandler contains four interfaces

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-06 Thread Vassil Vassilev via cfe-commits
@@ -118,6 +256,16 @@ void IncrementalSyntaxOnlyAction::ExecuteAction() { CI.getASTContext().getTranslationUnitDecl()->setHasExternalVisibleStorage( true); + // Load all external decls into current context. Under the hood, it calls vgvassilev wrote:

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-06 Thread Vassil Vassilev via cfe-commits
@@ -56,26 +69,151 @@ class ReplCompletionConsumer : public CodeCompleteConsumer { std::shared_ptr CCAllocator; CodeCompletionTUInfo CCTUInfo; std::vector &Results; + ReplCodeCompleter &CC; +}; + +/* + The abstract class CompletionContextHandler contains four interfaces

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-06 Thread Vassil Vassilev via cfe-commits
@@ -56,26 +69,151 @@ class ReplCompletionConsumer : public CodeCompleteConsumer { std::shared_ptr CCAllocator; CodeCompletionTUInfo CCTUInfo; std::vector &Results; + ReplCodeCompleter &CC; +}; + +/* + The abstract class CompletionContextHandler contains four interfaces

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-06 Thread Vassil Vassilev via cfe-commits
@@ -56,26 +69,151 @@ class ReplCompletionConsumer : public CodeCompleteConsumer { std::shared_ptr CCAllocator; CodeCompletionTUInfo CCTUInfo; std::vector &Results; + ReplCodeCompleter &CC; +}; + +/* + The abstract class CompletionContextHandler contains four interfaces

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-06 Thread Vassil Vassilev via cfe-commits
@@ -159,29 +308,62 @@ void ExternalSource::completeVisibleDeclsMap( for (auto *DeclCtxt = ParentTUDeclCtxt; DeclCtxt != nullptr; DeclCtxt = DeclCtxt->getPreviousDecl()) { for (auto &IDeclContext : DeclCtxt->decls()) { - if (NamedDecl *Decl = llvm::dyn_cast(IDe

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-06 Thread Vassil Vassilev via cfe-commits
@@ -56,26 +69,151 @@ class ReplCompletionConsumer : public CodeCompleteConsumer { std::shared_ptr CCAllocator; CodeCompletionTUInfo CCTUInfo; std::vector &Results; + ReplCodeCompleter &CC; +}; + +/* + The abstract class CompletionContextHandler contains four interfaces

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-06 Thread Vassil Vassilev via cfe-commits
@@ -159,29 +308,62 @@ void ExternalSource::completeVisibleDeclsMap( for (auto *DeclCtxt = ParentTUDeclCtxt; DeclCtxt != nullptr; DeclCtxt = DeclCtxt->getPreviousDecl()) { for (auto &IDeclContext : DeclCtxt->decls()) { - if (NamedDecl *Decl = llvm::dyn_cast(IDe

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-06 Thread Vassil Vassilev via cfe-commits
@@ -56,26 +69,151 @@ class ReplCompletionConsumer : public CodeCompleteConsumer { std::shared_ptr CCAllocator; CodeCompletionTUInfo CCTUInfo; std::vector &Results; + ReplCodeCompleter &CC; +}; + +/* + The abstract class CompletionContextHandler contains four interfaces

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-14 Thread Vassil Vassilev via cfe-commits
@@ -37,16 +39,15 @@ static std::vector runComp(clang::Interpreter &MainInterp, std::vector Results; std::vector Comps; - - codeComplete( - const_cast((*Interp)->getCompilerInstance()), - Prefix, /* Lines */ 1, Prefix.size(), MainInterp.getCompilerInstance(), -

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-14 Thread Vassil Vassilev via cfe-commits
@@ -37,16 +39,15 @@ static std::vector runComp(clang::Interpreter &MainInterp, std::vector Results; std::vector Comps; - - codeComplete( - const_cast((*Interp)->getCompilerInstance()), - Prefix, /* Lines */ 1, Prefix.size(), MainInterp.getCompilerInstance(), -

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-14 Thread Vassil Vassilev via cfe-commits
@@ -56,26 +63,146 @@ class ReplCompletionConsumer : public CodeCompleteConsumer { std::shared_ptr CCAllocator; CodeCompletionTUInfo CCTUInfo; std::vector &Results; + ReplCodeCompleter &CC; +}; + +// The class CompletionContextHandler contains four interfaces, each of +/

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-14 Thread Vassil Vassilev via cfe-commits
@@ -56,26 +63,146 @@ class ReplCompletionConsumer : public CodeCompleteConsumer { std::shared_ptr CCAllocator; CodeCompletionTUInfo CCTUInfo; std::vector &Results; + ReplCodeCompleter &CC; +}; + +// The class CompletionContextHandler contains four interfaces, each of +/

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-14 Thread Vassil Vassilev via cfe-commits
@@ -56,26 +63,146 @@ class ReplCompletionConsumer : public CodeCompleteConsumer { std::shared_ptr CCAllocator; CodeCompletionTUInfo CCTUInfo; std::vector &Results; + ReplCodeCompleter &CC; +}; + +// The class CompletionContextHandler contains four interfaces, each of +/

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-14 Thread Vassil Vassilev via cfe-commits
@@ -56,26 +63,146 @@ class ReplCompletionConsumer : public CodeCompleteConsumer { std::shared_ptr CCAllocator; CodeCompletionTUInfo CCTUInfo; std::vector &Results; + ReplCodeCompleter &CC; +}; + +// The class CompletionContextHandler contains four interfaces, each of +/

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-14 Thread Vassil Vassilev via cfe-commits
@@ -56,26 +63,146 @@ class ReplCompletionConsumer : public CodeCompleteConsumer { std::shared_ptr CCAllocator; CodeCompletionTUInfo CCTUInfo; std::vector &Results; + ReplCodeCompleter &CC; +}; + +// The class CompletionContextHandler contains four interfaces, each of +/

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-22 Thread Vassil Vassilev via cfe-commits
https://github.com/vgvassilev approved this pull request. LGTM! Thank you! https://github.com/llvm/llvm-project/pull/67349 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-23 Thread Vassil Vassilev via cfe-commits
vgvassilev wrote: @capfredf, can you rebase the PR to trigger a rebuild - the test failure seems unrelated to our changes but maybe it was fixed meanwhile. https://github.com/llvm/llvm-project/pull/67349 ___ cfe-commits mailing list cfe-commits@lists.

[clang] [NFC] [Serializer] Pack information in serializer (PR #69287)

2023-10-30 Thread Vassil Vassilev via cfe-commits
https://github.com/vgvassilev edited https://github.com/llvm/llvm-project/pull/69287 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [NFC] [Serializer] Pack information in serializer (PR #69287)

2023-10-30 Thread Vassil Vassilev via cfe-commits
https://github.com/vgvassilev commented: This looks pretty good modulo the comments. @zygoloid ping. https://github.com/llvm/llvm-project/pull/69287 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinf

[clang] [NFC] [Serializer] Pack information in serializer (PR #69287)

2023-10-30 Thread Vassil Vassilev via cfe-commits
@@ -2407,6 +2407,53 @@ class ASTReader bool isProcessingUpdateRecords() { return ProcessingUpdateRecords; } }; +/// A simple helper class to unpack an integer to bits and consuming +/// the bits in order. +class BitsUnpacker { + constexpr static uint32_t BitsIndexUpbound =

[clang] [NFC] [Serializer] Pack information in serializer (PR #69287)

2023-10-30 Thread Vassil Vassilev via cfe-commits
@@ -1689,9 +1709,10 @@ void ASTDeclReader::VisitParmVarDecl(ParmVarDecl *PD) { } else { PD->setScopeInfo(scopeDepth, scopeIndex); } - PD->ParmVarDeclBits.IsKNRPromoted = Record.readInt(); - PD->ParmVarDeclBits.HasInheritedDefaultArg = Record.readInt(); - if (Record.r

[clang] [NFC] [Serializer] Pack information in serializer (PR #69287)

2023-10-30 Thread Vassil Vassilev via cfe-commits
@@ -2407,6 +2407,53 @@ class ASTReader bool isProcessingUpdateRecords() { return ProcessingUpdateRecords; } }; +/// A simple helper class to unpack an integer to bits and consuming +/// the bits in order. +class BitsUnpacker { + constexpr static uint32_t BitsIndexUpbound =

[clang] [NFC] [Serializer] Pack information in serializer (PR #69287)

2023-10-31 Thread Vassil Vassilev via cfe-commits
@@ -2005,14 +2039,7 @@ void ASTWriter::WriteDeclAbbrevs() { // Decl Abv->Add(BitCodeAbbrevOp(BitCodeAbbrevOp::VBR, 6)); // DeclContext Abv->Add(BitCodeAbbrevOp(0)); // LexicalDeclContext - Abv->Add(BitCodeAbbrevOp(0)); // isInv

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-01 Thread Vassil Vassilev via cfe-commits
https://github.com/vgvassilev edited https://github.com/llvm/llvm-project/pull/67349 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-01 Thread Vassil Vassilev via cfe-commits
https://github.com/vgvassilev commented: Looks like this is heading in a good direction. Thank you! https://github.com/llvm/llvm-project/pull/67349 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-01 Thread Vassil Vassilev via cfe-commits
@@ -56,26 +69,135 @@ class ReplCompletionConsumer : public CodeCompleteConsumer { std::shared_ptr CCAllocator; CodeCompletionTUInfo CCTUInfo; std::vector &Results; + ReplCodeCompletion &CC; +}; + +class CompletionContextHanndler { +protected: + CodeCompletionContext CC

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-01 Thread Vassil Vassilev via cfe-commits
@@ -101,6 +223,7 @@ class ExternalSource : public clang::ExternalASTSource { ASTContext &ParentASTCtxt, FileManager &ParentFM); bool FindExternalVisibleDeclsByName(const DeclContext *DC, DeclarationName Name) override; +

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-01 Thread Vassil Vassilev via cfe-commits
@@ -56,26 +69,135 @@ class ReplCompletionConsumer : public CodeCompleteConsumer { std::shared_ptr CCAllocator; CodeCompletionTUInfo CCTUInfo; std::vector &Results; + ReplCodeCompletion &CC; +}; + +class CompletionContextHanndler { +protected: + CodeCompletionContext CC

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-01 Thread Vassil Vassilev via cfe-commits
@@ -56,26 +69,135 @@ class ReplCompletionConsumer : public CodeCompleteConsumer { std::shared_ptr CCAllocator; CodeCompletionTUInfo CCTUInfo; std::vector &Results; + ReplCodeCompletion &CC; +}; + +class CompletionContextHanndler { +protected: + CodeCompletionContext CC

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-01 Thread Vassil Vassilev via cfe-commits
@@ -23,8 +23,13 @@ namespace clang { class CodeCompletionResult; class CompilerInstance; -void codeComplete(CompilerInstance *InterpCI, llvm::StringRef Content, - unsigned Line, unsigned Col, const CompilerInstance *ParentCI, - std::vector &C

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-01 Thread Vassil Vassilev via cfe-commits
@@ -166,8 +300,37 @@ void ExternalSource::completeVisibleDeclsMap( SetExternalVisibleDeclsForName(ChildDeclContext, importedNamedDecl->getDeclName(), importedNamedDecl); -

[clang] [ClangRepl] Type Directed Code Completion (PR #67349)

2023-11-01 Thread Vassil Vassilev via cfe-commits
@@ -56,26 +69,135 @@ class ReplCompletionConsumer : public CodeCompleteConsumer { std::shared_ptr CCAllocator; CodeCompletionTUInfo CCTUInfo; std::vector &Results; + ReplCodeCompletion &CC; +}; + +class CompletionContextHanndler { vgvassilev wrote: ```

[clang] [clang-repl] [test] Make an XFAIL more precise (PR #70991)

2023-11-01 Thread Vassil Vassilev via cfe-commits
https://github.com/vgvassilev approved this pull request. Thank you. Lgtm! https://github.com/llvm/llvm-project/pull/70991 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [NFC] [Serializer] Pack information in serializer (PR #69287)

2023-11-03 Thread Vassil Vassilev via cfe-commits
https://github.com/vgvassilev approved this pull request. LGTM, thank you! https://github.com/llvm/llvm-project/pull/69287 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Sema] Always clear UndefinedButUsed (PR #73955)

2023-12-12 Thread Vassil Vassilev via cfe-commits
vgvassilev wrote: In principle we could add this test as an xfail to make sure we have this scenario when unloading support is up to that stage. https://github.com/llvm/llvm-project/pull/73955 ___ cfe-commits mailing list cfe-commits@lists.llvm.org h

[clang] [ClangRepl] Reland Semanic Code Completion (PR #75556)

2023-12-15 Thread Vassil Vassilev via cfe-commits
vgvassilev wrote: @capfredf, can you include the original commit message in the commit and add a line about what was done to resolve the reason we have reverted it earlier? https://github.com/llvm/llvm-project/pull/75556 ___ cfe-commits mailing list c

[clang] [clang-repl] fix segfault in CleanUpPTU() (PR #75629)

2023-12-15 Thread Vassil Vassilev via cfe-commits
@@ -0,0 +1,10 @@ +// RUN: clang-repl "int x = 10;" "{ int t; a::b(t); }" "int y = 10;" vgvassilev wrote: Can you move this in the `code-undo.cpp` test? https://github.com/llvm/llvm-project/pull/75629 ___ cfe-commits ma

[clang] [clang-repl] fix segfault in CleanUpPTU() (PR #75629)

2023-12-15 Thread Vassil Vassilev via cfe-commits
@@ -373,7 +373,15 @@ std::unique_ptr IncrementalParser::GenModule() { void IncrementalParser::CleanUpPTU(PartialTranslationUnit &PTU) { TranslationUnitDecl *MostRecentTU = PTU.TUPart; + if (!MostRecentTU) { +return; + } vgvassilev wrote: ```suggestio

[clang] [clang-repl] fix segfault in CleanUpPTU() (PR #75629)

2023-12-15 Thread Vassil Vassilev via cfe-commits
@@ -373,7 +373,15 @@ std::unique_ptr IncrementalParser::GenModule() { void IncrementalParser::CleanUpPTU(PartialTranslationUnit &PTU) { TranslationUnitDecl *MostRecentTU = PTU.TUPart; + if (!MostRecentTU) { +return; + } + TranslationUnitDecl *FirstTU = MostRecentTU

[clang] [clang-repl] fix segfault in CleanUpPTU() (PR #75629)

2023-12-15 Thread Vassil Vassilev via cfe-commits
@@ -0,0 +1,10 @@ +// RUN: clang-repl "int x = 10;" "{ int t; a::b(t); }" "int y = 10;" vgvassilev wrote: Then we can put it in a new file called `error-recovery.cpp`. https://github.com/llvm/llvm-project/pull/75629 ___

[clang] [clang-repl] fix segfault in CleanUpPTU() (PR #75629)

2023-12-16 Thread Vassil Vassilev via cfe-commits
@@ -0,0 +1,10 @@ +// RUN: clang-repl "int x = 10;" "{ int t; a::b(t); }" "int y = 10;" vgvassilev wrote: @p4vook ping. https://github.com/llvm/llvm-project/pull/75629 ___ cfe-commits mailing list cfe-commits@lists.llvm

[clang] [ClangRepl] Reland Semanic Code Completion (PR #75556)

2023-12-18 Thread Vassil Vassilev via cfe-commits
vgvassilev wrote: @capfredf ping. https://github.com/llvm/llvm-project/pull/75556 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [ClangRepl] Reland Semanic Code Completion (PR #75556)

2023-12-19 Thread Vassil Vassilev via cfe-commits
https://github.com/vgvassilev approved this pull request. LGTM! https://github.com/llvm/llvm-project/pull/75556 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [ClangRepl] Reland Semanic Code Completion (PR #75556)

2023-12-19 Thread Vassil Vassilev via cfe-commits
https://github.com/vgvassilev closed https://github.com/llvm/llvm-project/pull/75556 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [ClangRepl] Reland Semanic Code Completion (PR #75556)

2023-12-19 Thread Vassil Vassilev via cfe-commits
vgvassilev wrote: @vvereschaka, thanks for the ping. Will look into this shortly. Feel free to revert. https://github.com/llvm/llvm-project/pull/75556 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/list

  1   2   3   4   5   6   7   8   >