Page MenuHomePhabricator

boris (Boris Kolpackov)
User

Projects

User does not belong to any projects.

User Details

User Since
Jul 3 2017, 9:16 PM (115 w, 2 d)

Recent Activity

Dec 28 2017

boris added a comment to D40443: [Modules TS] Make imports from an interface unit visible to its implementation units.

I don't think it will be wise for me to accept this revision since I can't claim to have good understanding of Clang's internal modules model. I think it will be wise to have Richard take a look.

Dec 28 2017, 6:48 AM

Nov 24 2017

boris added a comment to D40443: [Modules TS] Make imports from an interface unit visible to its implementation units.

LGTM. Maybe it makes sense to also test that an unrelated translation unit that imports module 'test' sees neither 'a' nor 'b'.

Nov 24 2017, 9:37 AM

Nov 22 2017

boris added a comment to D40270: [Modules TS] Added re-export support.

All our tests pass as well. Thanks for your work!

Nov 22 2017, 4:15 AM

Nov 20 2017

boris added a comment to D40270: [Modules TS] Added re-export support.

LGTM. Will be happy to also run our re-export tests in build2 once this is merged.

Nov 20 2017, 10:47 PM

Nov 17 2017

boris added a comment to D37299: [Modules] Add ability to specify module name to module file mapping in a file.

Also, to add to my previous comment, even if for a moment we ignore the header dependencies and when they are extracted, a modern build system normally tracks other kinds of what can be called "auxiliary dependency information": some form of compiler signature, hash of options that were used to compile the file, etc., so that when any of those change, the object file gets recompiled automatically. For example, in build2, we store all these signatures/hashes plus the header and module dependency information in a single .d file (which we call auxiliary dependency database). What I am trying to show by this is that it is well established that for C/C++ compilation there has to be an extra file for each .o where such information is stored. And it seems natural to want to reuse this file for supplying the "module map" to the compiler instead of creating yet another per-.o file.

Nov 17 2017, 4:17 AM

Nov 4 2017

boris added a comment to D37299: [Modules] Add ability to specify module name to module file mapping in a file.

Hi Richard,

Nov 4 2017, 12:04 AM

Nov 3 2017

boris added a comment to D37299: [Modules] Add ability to specify module name to module file mapping in a file.

Ping.

Nov 3 2017, 12:49 AM

Oct 27 2017

boris added a comment to D37299: [Modules] Add ability to specify module name to module file mapping in a file.

Ping.

Oct 27 2017, 5:17 AM

Oct 20 2017

boris added a comment to D37299: [Modules] Add ability to specify module name to module file mapping in a file.

Ping.

Oct 20 2017, 9:04 AM

Oct 13 2017

boris added a comment to D37299: [Modules] Add ability to specify module name to module file mapping in a file.

Ping.

Oct 13 2017, 12:34 AM

Oct 9 2017

boris added a comment to D37299: [Modules] Add ability to specify module name to module file mapping in a file.

Ping.

Oct 9 2017, 8:17 AM

Sep 29 2017

boris added a comment to D37299: [Modules] Add ability to specify module name to module file mapping in a file.

Ping.

Sep 29 2017, 11:58 AM

Sep 25 2017

boris updated the diff for D37299: [Modules] Add ability to specify module name to module file mapping in a file.

Another attempt to upload a clean diff (also rebased on latest HEAD).

Sep 25 2017, 5:02 AM
boris added a comment to D37299: [Modules] Add ability to specify module name to module file mapping in a file.

Yes, the main "feature" of this approach compared to @file is the ability to reuse an already existing file to store this information. Most build systems that support C/C++ compilation have to store auxiliary dependency information at least for the extracted header dependencies (those .d files generated by the -M option family, for example) but some also store hashes of options, compiler version/signature, etc. So instead of creating a yet another file (per translation unit), the idea is to reuse the already existing one by storing the mapping with some "distinguishing" prefix. As a concrete example, a make-based build system could append it to the .d file (which is a makefile fragment) as comments. How exactly this information is extracted is still an open question but I think this approach is generic enough to accommodate a wide range of possibilities (for example, -M could produce this information or the build system could append it itself after the -M is done).

Sep 25 2017, 5:02 AM
boris updated the diff for D37299: [Modules] Add ability to specify module name to module file mapping in a file.

New revision this time with the tests (which got dropped from the earlier revision diff for some reason).

Sep 25 2017, 5:02 AM

Sep 15 2017

boris added a comment to D37299: [Modules] Add ability to specify module name to module file mapping in a file.

Ping.

Sep 15 2017, 4:45 AM

Sep 8 2017

boris added a comment to D37299: [Modules] Add ability to specify module name to module file mapping in a file.

Ping.

Sep 8 2017, 9:14 AM

Sep 4 2017

boris updated the diff for D37299: [Modules] Add ability to specify module name to module file mapping in a file.

New patch revision with David's comments addressed.

Sep 4 2017, 10:56 AM
boris added a comment to D37299: [Modules] Add ability to specify module name to module file mapping in a file.

David, thanks for the review. Uploading the new revision (also rebased on HEAD).

Sep 4 2017, 10:55 AM

Aug 30 2017

boris created D37299: [Modules] Add ability to specify module name to module file mapping in a file.
Aug 30 2017, 8:46 AM
boris added inline comments to D35020: [Modules] Add ability to specify module name to module file mapping.
Aug 30 2017, 1:13 AM

Aug 24 2017

boris added a comment to D35020: [Modules] Add ability to specify module name to module file mapping.

Ping.

Aug 24 2017, 10:04 PM

Aug 19 2017

boris updated the diff for D35020: [Modules] Add ability to specify module name to module file mapping.

New revision of the patch that I believe addresses all the issues except for the '=' escaping.

Aug 19 2017, 8:28 AM
boris added inline comments to D35020: [Modules] Add ability to specify module name to module file mapping.
Aug 19 2017, 8:24 AM
boris added a comment to D35020: [Modules] Add ability to specify module name to module file mapping.

I've marked as "done" items that I have resolved in my local revision (not yet uploaded) and have added one comment for further feedback.

Aug 19 2017, 1:41 AM

Aug 16 2017

boris added a comment to D35678: Omit sumbodule semantics for TS modules.

I'd still like the id flattening moved to the caller. [...] I'm fine with that being done as a separate change after this one, though, if you'd prefer.

Aug 16 2017, 8:25 AM

Aug 13 2017

boris updated the diff for D35678: Omit sumbodule semantics for TS modules.

Richard, sorry for the last ping, somehow I missed your review.

Aug 13 2017, 7:38 AM

Aug 9 2017

boris added a comment to D35678: Omit sumbodule semantics for TS modules.

Ping.

Aug 9 2017, 5:49 AM
boris added a comment to D35020: [Modules] Add ability to specify module name to module file mapping.

Ping.

Aug 9 2017, 5:49 AM

Aug 3 2017

boris added a comment to D35678: Omit sumbodule semantics for TS modules.

Ping.

Aug 3 2017, 9:37 AM

Aug 1 2017

boris added a comment to D35020: [Modules] Add ability to specify module name to module file mapping.

Ping.

Aug 1 2017, 11:42 AM

Jul 26 2017

boris added a comment to D35678: Omit sumbodule semantics for TS modules.

Ping.

Jul 26 2017, 9:37 PM

Jul 25 2017

boris added a comment to D35020: [Modules] Add ability to specify module name to module file mapping.

FWIW, I went ahead and implemented this functionality in GCC. It has been merged into its c++-modules branch.

Jul 25 2017, 4:46 AM

Jul 20 2017

boris created D35678: Omit sumbodule semantics for TS modules.
Jul 20 2017, 5:08 AM

Jul 17 2017

boris added a comment to D35020: [Modules] Add ability to specify module name to module file mapping.

I am holding off on proposing the same functionality to GCC because I want to make sure the command line interface is the same for both compilers (GCC has less baggage in this area, option-name-wise). So confirming that at least the naming/semantics are acceptable would be very helpful.

Jul 17 2017, 9:38 PM
boris updated the diff for D35020: [Modules] Add ability to specify module name to module file mapping.

Rebase on latest HEAD.

Jul 17 2017, 9:33 PM

Jul 11 2017

boris added a comment to D35020: [Modules] Add ability to specify module name to module file mapping.

Ping.

Jul 11 2017, 9:01 AM
boris updated the diff for D35020: [Modules] Add ability to specify module name to module file mapping.

Rebase on latest HEAD.

Jul 11 2017, 9:00 AM

Jul 5 2017

boris created D35020: [Modules] Add ability to specify module name to module file mapping.
Jul 5 2017, 10:17 AM