Page MenuHomePhabricator

klimek (Manuel Klimek)Administrator
User

Projects

User does not belong to any projects.

User Details

User Since
Jul 7 2012, 2:55 PM (340 w, 5 d)
Roles
Administrator

Recent Activity

Today

klimek added a comment to D56841: [clangd] Filter out plugin related flags..

It seems like the most relevant place in tooling is ArgumentsAdjuster as @ioeric pointed out. Happy to move it to there if @sammccall and @klimek agrees as well.

As a side note ArgumentsAdjusters unfortunately causes a copy of the original command line arguments. Not sure how important this factor is compared to spinning up a compiler instance, just wanted to point it out.

Thu, Jan 17, 6:38 AM

Thu, Jan 10

klimek added a comment to D56444: [AST] RecursiveASTVisitor visits lambda classes when implicit visitation is on..

Just in general, I'd like to add that my experience over the years dealing with folks trying to do AST matchers is that the inability to express something is much more of a problem than matching too much, simply because the test cases people think of are usually small, and when running a transformation on a very large codebase, the cost of false negatives is significantly higher than the cost of false positive: the cost of a false negative means that you may produce something incorrect. The cost of a false positive is that you adapt your matcher to exclude the false negative.

Thu, Jan 10, 4:16 AM

Wed, Jan 9

klimek added a comment to D56444: [AST] RecursiveASTVisitor visits lambda classes when implicit visitation is on..

@klimek: would it be better to preserve the odd behavior of the functionDecl() matcher, and add a new functionOrLambdaDecl()? It seems too surprising to me.

We can change the clang-tidy check as well. I think lambdas should be considered functionDecls, shouldnt they? WDYT @aaron.ballman ?

I think it depends on whether we want the AST matchers to match what the user wrote (syntax) or how the program behaves (semantics). If the user writes a lambda, they did not syntactically write a function declaration and so it makes sense for functionDecl() to not match. However, the semantics of a lambda are that they act as a functor (in effect) which includes a class declaration, a function declaration for the function call operator, conversion operators, etc and so it does make sense for users to want to match those semantic components. Given that, I kind of think we should have functionDecl() match only functions, and give users some other way to match the semantic declarations in a consistent manner. Alternatively, we could decide semantics are what we want to match (because it's what the AST encodes) and instead we give users a way to request to only match syntax.

Wed, Jan 9, 6:39 AM
klimek added a comment to D56444: [AST] RecursiveASTVisitor visits lambda classes when implicit visitation is on..

I still see the unit-test crashing for ExprMutAnalyzer (just apply the last two tests https://github.com/JonasToth/clang/blob/fix_crash/unittests/Analysis/ExprMutationAnalyzerTest.cpp and run check-clang-unit)

The ReproduceFailure11 test passes for me, and the ReproduceFailureMinimal fails to compile (a&&).

The clang-tidy check does not crash anymore, but readability-function-size regresses. It probably doesn't properly count for lambdas anymore.

Rather, it previously didn't count lambda bodies as functions (because functionDecl() didn't include them), and now it does :-)
I think counting them is better behavior, but I've modified the matcher to preserve the behavior for now.

@klimek: would it be better to preserve the odd behavior of the functionDecl() matcher, and add a new functionOrLambdaDecl()? It seems too surprising to me.

Wed, Jan 9, 2:59 AM

Fri, Jan 4

klimek added inline comments to D56090: Add a matcher for members of an initializer list expression.
Fri, Jan 4, 2:14 AM · Restricted Project

Dec 11 2018

klimek added a comment to D54309: [AST] Allow limiting the scope of common AST traversals (getParents, RAV)..

See PR39949 as well, as it seems to trigger the same or a similar problem.
@ioeric and @klimek maybe could give an opinion, too?

Dec 11 2018, 5:55 AM

Dec 7 2018

klimek accepted D54672: clang-include-fixer.el: support remote files.

LG

Dec 7 2018, 6:26 AM

Nov 29 2018

klimek added inline comments to D54952: [clangd] DO NOT SUBMIT. Draft interfaces for build system integration..
Nov 29 2018, 6:32 AM

Nov 28 2018

klimek added inline comments to D54952: [clangd] DO NOT SUBMIT. Draft interfaces for build system integration..
Nov 28 2018, 2:28 AM

Nov 13 2018

klimek added a comment to D54453: Remove myself as owner of clang-query..

Thanks Aaron for volunteering, I'm very thankful for all your work on the reviews, it's much appreciated :D

Nov 13 2018, 1:21 AM

Nov 6 2018

klimek added a comment to D54077: [clangd] Implemented DraftFileSystem.

Someone mentioned to me that the interaction-between-features argument wasn't clear here:

  • we don't currently update diagnostics for A.cc when A.h is edited
  • we should, this seems more obvious & important than what we do with drafts
  • this interacts badly with using draft state, as this patch proposes - there are too many edits

FWIW, one of my "pain points" when using vim+clangd is:

  • Edit A.h in a buffer (and forget to save)
  • Switch to A.cc in another buffer
  • Realize that I forgot to save A.h
  • Go back to save A.h
  • Jump back to A.cc file.

    I would be very happy if A.cc can see the unsaved A.h when I am editing A.cc. I think the update should be relatively less frequent with this approach, as people don't usually update multiple files at the same time. Not sure if I want all files that depend on A.h to be updated when I edit A.h though; it seems much more complicated and less important (to me).
Nov 6 2018, 1:52 AM

Nov 5 2018

klimek added a comment to D54077: [clangd] Implemented DraftFileSystem.

@klimek If behavior will be configurable, is it ok for you?

Nov 5 2018, 7:05 AM
klimek added a comment to D54077: [clangd] Implemented DraftFileSystem.

Thanks for the patch! I believe many people I talked to want this behavior (myself included).
Some people like what we do now more. It feels like it depends on the workflow: for people who auto-save *all* files before build (some editors do it automatically?) the new behavior is the right one, for people who only save current file and rerun build on the console the old behavior is the correct one.
It all boils down to the argument "I want to see same errors that running the compiler would produce".

@klimek, @arphaman, @simark, WDYT?

Nov 5 2018, 4:15 AM

Oct 4 2018

klimek added a comment to D37813: clang-format: better handle namespace macros.

The problem here is that we have different opinions on how the formatting on namespace macros should behave in the first place- I think they should behave like namespaces, you want them to be formatted differently.
Given that you want full control over the formatting of those macros, and them not actually be formatted exactly like namespaces or classes, I think we need a more generic mechanism for you to express that.

Not sure what you mean here. I want them to behave like namespaces as well, this is actually the use case I have... As implemented, they indeed behave exactly like namespaces :

TESTSUITE(a) {                       namespace a {
} // TESTSUITE(a)                    } // namespace a
                                VS
TESTSUITE(a) { TESTSUITE(b) {        namespace a { namespace b {
} // TESTSUITE(a::b)                 }} // namespace a::b
Oct 4 2018, 2:35 AM

Sep 3 2018

klimek added inline comments to D44609: [Clang-Format] New option BeforeLambdaBody to manage lambda line break inside function parameter call (in Allman style).
Sep 3 2018, 1:04 AM

Aug 27 2018

klimek added inline comments to D51258: Extract parseBindID method.
Aug 27 2018, 1:10 AM
klimek accepted D51259: Allow binding to NamedValue resulting from let expression.

LG

Aug 27 2018, 1:10 AM
klimek accepted D51261: Add preload option to clang-query.

LG

Aug 27 2018, 1:04 AM
klimek added inline comments to D44609: [Clang-Format] New option BeforeLambdaBody to manage lambda line break inside function parameter call (in Allman style).
Aug 27 2018, 12:45 AM

Aug 21 2018

klimek accepted D50697: [clang-format] fix PR38557 - comments between "default" and ':' causes the case label to be treated as an identifier.

lg

Aug 21 2018, 3:40 AM

Aug 1 2018

klimek added a comment to D45719: [clang-Format] Fix indentation of member call after block.

Sorry that I lost track of that, but feel free to ping once / week - unfortunately the patch doesn't apply cleanly, can you rebase?

Aug 1 2018, 8:43 AM
klimek added a comment to D37813: clang-format: better handle namespace macros.

The problem here is that we have different opinions on how the formatting on namespace macros should behave in the first place- I think they should behave like namespaces, you want them to be formatted differently.
Given that you want full control over the formatting of those macros, and them not actually be formatted exactly like namespaces or classes, I think we need a more generic mechanism for you to express that.

Aug 1 2018, 3:15 AM
klimek added a comment to D50078: clang-format: support aligned nested conditionals formatting.

Yea, if we go down this route I'd go with this by default:

some ? thing :
else ? otherthing :
unrelated ? but :
    finally;
Aug 1 2018, 3:03 AM

Jul 26 2018

klimek added a comment to D49840: [AST] Add MatchFinder::matchSubtree.

Usually we use match(anyOf(node), hasDescendant(node)). Or did I misunderstand what you want?

Jul 26 2018, 3:21 AM

Jul 24 2018

klimek accepted D49724: [VFS] Cleanups to VFS interfaces..

lg

Jul 24 2018, 4:45 AM

Jul 13 2018

klimek added inline comments to D44609: [Clang-Format] New option BeforeLambdaBody to manage lambda line break inside function parameter call (in Allman style).
Jul 13 2018, 2:28 AM

Jul 3 2018

klimek added inline comments to D44609: [Clang-Format] New option BeforeLambdaBody to manage lambda line break inside function parameter call (in Allman style).
Jul 3 2018, 2:28 AM
klimek added inline comments to D44609: [Clang-Format] New option BeforeLambdaBody to manage lambda line break inside function parameter call (in Allman style).
Jul 3 2018, 12:09 AM

Jul 2 2018

klimek added a comment to D28462: clang-format: Add new style option AlignConsecutiveMacros.

@klimek having gotten that out of the way, I do occasionally drink too much and have sudden urges to re-implement things from scratch. Close it if you need to, since I can't commit to anything, but.... it it happens to be still open on one of those nights, who knows, maybe I'll end up doing it :)

Jul 2 2018, 12:45 AM · Restricted Project
klimek added inline comments to D45094: [LibTooling] Make interface of VFS injection into ClangTool more user-friendly.
Jul 2 2018, 12:44 AM · Restricted Project
klimek accepted D48159: [clangd] Implement hover for "auto" and "decltype".
Jul 2 2018, 12:22 AM

Jun 29 2018

klimek added a reviewer for D48159: [clangd] Implement hover for "auto" and "decltype": rsmith.
Jun 29 2018, 2:47 AM
klimek added a comment to D28462: clang-format: Add new style option AlignConsecutiveMacros.

@klimek fair point. To be honest, I've pretty much lost interest / momentum on this feature, I very much doubt I will ever go back and re-implement from scratch as you suggest.
Not meaning to sound rude, I just don't want to waste anyone's time who is waiting for this (seems there are a few).

Jun 29 2018, 2:38 AM · Restricted Project

Jun 28 2018

klimek added inline comments to D48159: [clangd] Implement hover for "auto" and "decltype".
Jun 28 2018, 1:18 AM

Jun 27 2018

klimek added a comment to D44609: [Clang-Format] New option BeforeLambdaBody to manage lambda line break inside function parameter call (in Allman style).
Hello,

after my last modification (require by previous comment), I do not see any feedback or validation for this patch.
Is their something special to do in order to go forward on this patch?

Lambda are more an more used in modern C++, and it's very annoying to not have a way to format them in allman style.

Jun 27 2018, 12:35 AM

Jun 26 2018

klimek accepted D45719: [clang-Format] Fix indentation of member call after block.

LG.

Jun 26 2018, 4:56 AM
klimek added inline comments to D45719: [clang-Format] Fix indentation of member call after block.
Jun 26 2018, 1:12 AM

Jun 25 2018

klimek added inline comments to D45719: [clang-Format] Fix indentation of member call after block.
Jun 25 2018, 8:54 AM
klimek added inline comments to D45719: [clang-Format] Fix indentation of member call after block.
Jun 25 2018, 4:30 AM

Jun 21 2018

klimek added inline comments to D48259: [clang-format] Fix bug with UT_Always when there is less than one full tab.
Jun 21 2018, 6:56 AM · Restricted Project

Jun 18 2018

klimek accepted D48242: [ASTMatchers] Add support for matching the type of a friend decl..

lg, thx

Jun 18 2018, 2:12 AM · Restricted Project
klimek accepted D48269: [ASTMatchers] Don't assert-fail in specifiesTypeLoc()..

lg, thanks!

Jun 18 2018, 1:59 AM · Restricted Project

Jun 17 2018

klimek added inline comments to D48259: [clang-format] Fix bug with UT_Always when there is less than one full tab.
Jun 17 2018, 11:11 PM · Restricted Project

Jun 15 2018

klimek added inline comments to D48242: [ASTMatchers] Add support for matching the type of a friend decl..
Jun 15 2018, 5:02 PM · Restricted Project
klimek added a comment to D48230: [PredicateInfo] Order instructions in different BBs by DFSNumIn..

Florian: did you manually add Danny on this (the account is disabled and I'm trying to figure out where / how folks are added).

Jun 15 2018, 4:52 PM

Jun 14 2018

klimek accepted D47759: [Format] Do not use a global static value for EOF within ScopedMacroState..

LG.

Jun 14 2018, 9:04 PM · Restricted Project

Jun 12 2018

klimek accepted D46024: [clang-format] Add SpaceBeforeCpp11BracedList option..

FWIW, please note that this space-before-brace style is not specific to WebKit; CppCoreGuidelines exhibits it as well:
http://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#es23-prefer-the--initializer-syntax

This and WebKit's style seem like compelling arguments to support this option.

klimek, djasper: Do you have any objections against landing this?

Jun 12 2018, 10:27 AM

May 30 2018

klimek accepted D47095: [clang-format/ObjC] Correctly parse Objective-C methods with 'class' in name.

LG

May 30 2018, 2:17 AM

May 9 2018

klimek committed rCTE331875: Do not warn on unused parameters for functions with empty bodies..
Do not warn on unused parameters for functions with empty bodies.
May 9 2018, 6:23 AM
klimek committed rL331875: Do not warn on unused parameters for functions with empty bodies..
Do not warn on unused parameters for functions with empty bodies.
May 9 2018, 6:23 AM

May 2 2018

klimek added a comment to D36610: [Tooling] Add option to getFullyQualifiedName using a custom PritingPolicy.

I believe this was accepted by rnk - are you waiting for specific further feedback?

May 2 2018, 12:54 AM

Apr 26 2018

klimek added a comment to D46024: [clang-format] Add SpaceBeforeCpp11BracedList option..

Is this written down somewhere? https://webkit.org/code-style-guidelines/ doesn't seem to mention it.

Apr 26 2018, 6:01 AM
klimek added inline comments to D44609: [Clang-Format] New option BeforeLambdaBody to manage lambda line break inside function parameter call (in Allman style).
Apr 26 2018, 6:01 AM

Apr 25 2018

klimek accepted D46062: [clang-format] Start formatting cpp code in raw strings in google style.

LG

Apr 25 2018, 7:42 AM
klimek added inline comments to D45719: [clang-Format] Fix indentation of member call after block.
Apr 25 2018, 3:27 AM

Apr 23 2018

klimek committed rCTE330580: Fix tests after changes to clang-format in r330573..
Fix tests after changes to clang-format in r330573.
Apr 23 2018, 4:51 AM
klimek committed rL330580: Fix tests after changes to clang-format in r330573..
Fix tests after changes to clang-format in r330573.
Apr 23 2018, 4:51 AM
klimek committed rL330573: Format closing braces when reformatting the line containing the opening brace..
Format closing braces when reformatting the line containing the opening brace.
Apr 23 2018, 2:37 AM
klimek committed rC330573: Format closing braces when reformatting the line containing the opening brace..
Format closing braces when reformatting the line containing the opening brace.
Apr 23 2018, 2:37 AM
klimek closed D45726: Format closing braces when reformatting the line containing theopening brace..
Apr 23 2018, 2:37 AM

Apr 20 2018

klimek added a comment to D45726: Format closing braces when reformatting the line containing theopening brace..

Another point: for the example in the summary about bailing-out early, is there a test for this already? If not, we should add one.

Apr 20 2018, 3:04 AM
klimek updated the diff for D45726: Format closing braces when reformatting the line containing theopening brace..

Address comments.

Apr 20 2018, 3:04 AM
klimek added inline comments to D28462: clang-format: Add new style option AlignConsecutiveMacros.
Apr 20 2018, 1:05 AM · Restricted Project

Apr 17 2018

klimek created D45726: Format closing braces when reformatting the line containing theopening brace..
Apr 17 2018, 9:10 AM
klimek accepted D38615: [libclang] Only mark CXCursors for explicit attributes with a type.

lg

Apr 17 2018, 2:31 AM

Apr 11 2018

klimek committed rL329816: Fix bugs around handling C++11 attributes..
Fix bugs around handling C++11 attributes.
Apr 11 2018, 7:55 AM
klimek committed rC329816: Fix bugs around handling C++11 attributes..
Fix bugs around handling C++11 attributes.
Apr 11 2018, 7:55 AM

Apr 9 2018

klimek accepted D43969: Improve completion experience for headers.

lg

Apr 9 2018, 6:29 AM

Jan 16 2018

klimek added a comment to D42036: [clang-format] Keep comments aligned to macros.

Just from a formatting point of view, why not:

//.   Comment
#.    define X
Jan 16 2018, 1:16 AM

Jan 5 2018

klimek added inline comments to D41487: [clang-format] Adds a FormatStyleSet.
Jan 5 2018, 7:07 AM

Dec 21 2017

klimek added inline comments to D41487: [clang-format] Adds a FormatStyleSet.
Dec 21 2017, 7:06 AM

Dec 18 2017

klimek added a comment to D37813: clang-format: better handle namespace macros.
In D37813#958116, @Typz wrote:

OK.

So you mean a solution like the one discussed earlier would be the way to go?

I mean that we can configure macros in the format style, like "define A(X) class X {". I'm not 100% sure whether we would just try to use the Preprocessor for this, or whether we'd want to only allow a small subset of actual macros, but the general idea would be the same: The UnwrappedLineParser would parse the macro at the expansion location A(X) into an unwrapped line, and then parse the expansion into a child line, with the tokens tha tare not in the argument of the call being marked as fixed (parent child might also be better inverted).

(As a side-note, I want to stress out that we would actually need a 'reversible' description to support the namespace case, to allow generating the end-of-namespace comment)

Dec 18 2017, 4:23 AM
klimek added a comment to D37813: clang-format: better handle namespace macros.

I've talked with Daniel and we both believe this patch is not the right way to go forward for clang-format. It is adding configuration mechanisms that we need to maintain going forward, without addressing a general problem; specifically for how to handle macros, I believe there is a clear better way to do it that is also fundamentally more useful than adding extra knobs for every problem we encounter. Finally, these changes do not address a fundamental bug, and workarounds exist, so there is no large benefit to do this now in a non-principled way rather than wait for a more principled fix. Overall, I do understand that this is a trade-off, but I hope you understand that we sometimes have to make decisions.

Dec 18 2017, 1:40 AM

Dec 13 2017

klimek accepted D41130: git-clang-format: cleanup: Use run() when possible..

lg

Dec 13 2017, 1:05 AM
klimek accepted D41147: git-clang-format: Add new --staged option..

lg

Dec 13 2017, 1:03 AM
klimek accepted D41145: git-clang-format: refactor to support upcoming --staged flag.

lg

Dec 13 2017, 1:02 AM

Dec 11 2017

klimek added inline comments to D40485: [clangd] Introduced a Context that stores implicit data.
Dec 11 2017, 7:32 AM

Dec 8 2017

klimek added inline comments to D40909: [clang-format] Reorganize raw string delimiters.
Dec 8 2017, 2:33 AM

Dec 6 2017

klimek added inline comments to D39027: [docs][refactor] Add a new tutorial that talks about how one can implement refactoring actions.
Dec 6 2017, 7:20 AM
klimek added a comment to D37813: clang-format: better handle namespace macros.
In D37813#945125, @Typz wrote:

I don't think this is really relevant for this tool: if someone changes the implementation of the macro, then *they* must indeed if it should not be formatted like a namespace (and keep the clang-format configuration unchanged), or if it should now be formatted like a class (and thus make changes to clang-format configuration). Here we are not defining what the macro does, but how clang-format should indent it : in most case I don't think the indentation format should actually depend on the way it is implemented...

Dec 6 2017, 2:31 AM

Dec 4 2017

klimek committed rC319642: Fix bug where we wouldn't break columns over the limit..
Fix bug where we wouldn't break columns over the limit.
Dec 4 2017, 12:54 AM
klimek committed rL319642: Fix bug where we wouldn't break columns over the limit..
Fix bug where we wouldn't break columns over the limit.
Dec 4 2017, 12:53 AM

Dec 1 2017

klimek added a comment to D37813: clang-format: better handle namespace macros.
In D37813#942137, @Typz wrote:

As far as "parsing" and formatting inside the block is concerned, this is indeed unrelated (and would totally work if all macros where specified with some preprocessor definitions).

But identifying the 'opening' token and generating the matching 'closing' comment are totally related; it would seem very strange to have an option to specify that TESTSUITE() macros are parsed as namespace, then another option to indicate that namespace declared by this macros are actually closed with another macro call...

Dec 1 2017, 7:55 AM
klimek added a comment to D33589: clang-format: consider not splitting tokens in optimization.
In D33589#942128, @Typz wrote:

Indeed, looks good, thanks!

Though that exacerbates the alignment issue, I now get things like this:

enum {
  SomeLongerEnum, // comment
  SomeThing,      // comment
  Foo, // something
} 
                            ^ (column limit)

The comment on 'Foo' would overflow a bit, but it gets unindented during "alingment" stage, which kind of 'breaks' the decision that was made earlier on *not* to break the comment...

Dec 1 2017, 7:47 AM
klimek added a comment to D37813: clang-format: better handle namespace macros.
In D37813#941987, @Typz wrote:

Definitely that would be much more expressive. But this approach is also incomplete: in case of namespace (and possibly others?), we also need to perform the reverse operation, e.g. to "generate" a macro call for rewriting the closing comment.

On top of this, I think that is really not trivial, I would prefer to move forward with these "simpler" patch, and change the whole macro configurations part in later commits...

Dec 1 2017, 6:35 AM
klimek added a comment to D33589: clang-format: consider not splitting tokens in optimization.
In D33589#941979, @Typz wrote:

I think the difference between code and comments is that code "words" are easily 10 characters or more, whereas actual words (in comments) are very often less than 10 characters: so code overflowing by 10 characters is not very frequent. whereas small words in comment will often get closer to the "extra" limit.

That said, I tried with your latest change ("Restructure how we break tokens", sha1:64d42a2fb85ece5987111ffb908c6bc7f7431dd4). and it's working about fine now. For the most part it seems to wrap when I would expect it, great work!
I have seen 2 "issues" though:

  • Often I see that the last word before reflowing is not wrapped (eventhough it overlaps the line length); I did not count penalties so I cannot confirm this is really an issue or just a borderline scenario.
  • Alignment seems better than before, but since there is no penalty for breaking alignment it will always try to unindent to compensate for overflowing characters...

    Seeing this, I guess this patch does not make much sense anymore, I'll see if I make some improvements for these two issues, in separate patches.
Dec 1 2017, 5:54 AM
klimek committed rC319541: Better trade-off for excess characters vs. staying within the column limits..
Better trade-off for excess characters vs. staying within the column limits.
Dec 1 2017, 5:29 AM
klimek committed rL319541: Better trade-off for excess characters vs. staying within the column limits..
Better trade-off for excess characters vs. staying within the column limits.
Dec 1 2017, 5:28 AM
klimek closed D40605: Better trade-off for excess characters vs. staying within the column limits. by committing rL319541: Better trade-off for excess characters vs. staying within the column limits..
Dec 1 2017, 5:28 AM
klimek updated the diff for D40605: Better trade-off for excess characters vs. staying within the column limits..

Add test.

Dec 1 2017, 3:04 AM

Nov 30 2017

klimek updated the diff for D40605: Better trade-off for excess characters vs. staying within the column limits..

Fix incorrect return value leading to unnecessary computation.

Nov 30 2017, 7:52 AM
klimek added inline comments to D40605: Better trade-off for excess characters vs. staying within the column limits..
Nov 30 2017, 6:16 AM

Nov 29 2017

klimek created D40605: Better trade-off for excess characters vs. staying within the column limits..
Nov 29 2017, 7:53 AM
klimek committed rL319318: Fix 'control reaches end of non-void' warning by using llvm_unreachable..
Fix 'control reaches end of non-void' warning by using llvm_unreachable.
Nov 29 2017, 7:09 AM
klimek committed rC319318: Fix 'control reaches end of non-void' warning by using llvm_unreachable..
Fix 'control reaches end of non-void' warning by using llvm_unreachable.
Nov 29 2017, 7:09 AM
klimek committed rC319314: Restructure how we break tokens..
Restructure how we break tokens.
Nov 29 2017, 6:30 AM
klimek committed rL319314: Restructure how we break tokens..
Restructure how we break tokens.
Nov 29 2017, 6:30 AM
klimek closed D40310: Restructure how we break tokens. by committing rL319314: Restructure how we break tokens..
Nov 29 2017, 6:30 AM
klimek added inline comments to D40310: Restructure how we break tokens..
Nov 29 2017, 4:32 AM
klimek added inline comments to D40310: Restructure how we break tokens..
Nov 29 2017, 3:09 AM