Page MenuHomePhabricator

AlexanderHederstaf (Alexander Hederstaf)
User

Projects

User does not belong to any projects.

User Details

User Since
Feb 24 2023, 12:59 AM (14 w, 2 d)

Recent Activity

Mar 27 2023

AlexanderHederstaf added a comment to rGcd7ab4b5c168: [clang-format] Improve QualifierAlignment.

Yes, of course. Thanks!

Mar 27 2023, 7:33 AM · Restricted Project, Restricted Project
AlexanderHederstaf added a comment to D144709: [clang-format] Improve QualifierAlignment.

Okay thanks. If the + options works let's go with
alexanderhederstaf+llvm@gmail.com

Mar 27 2023, 3:01 AM · Restricted Project, Restricted Project, Restricted Project

Mar 15 2023

AlexanderHederstaf added a comment to D144709: [clang-format] Improve QualifierAlignment.

What is the next step in the process? Anything I should do?

If you have commit access you can go ahead and commit, if not and you want one of us to do it, we need your name and email address

Mar 15 2023, 8:48 AM · Restricted Project, Restricted Project, Restricted Project

Mar 13 2023

AlexanderHederstaf added a comment to D144709: [clang-format] Improve QualifierAlignment.

What is the next step in the process? Anything I should do?

Mar 13 2023, 6:01 AM · Restricted Project, Restricted Project, Restricted Project

Mar 6 2023

AlexanderHederstaf requested review of D144709: [clang-format] Improve QualifierAlignment.

I might have been tempted to handle the comments in a separate commit, I don't like to do too much in one go or the review gets hard to manage.

Mar 6 2023, 4:12 AM · Restricted Project, Restricted Project, Restricted Project
AlexanderHederstaf updated the diff for D144709: [clang-format] Improve QualifierAlignment.

Handle /*c*/ comments inside types.
Add >> test to right->left.

Mar 6 2023, 2:38 AM · Restricted Project, Restricted Project, Restricted Project
AlexanderHederstaf planned changes to D144709: [clang-format] Improve QualifierAlignment.

Missed right->left in the fix. Also looking a bit at comments, e.g.

Mar 6 2023, 1:26 AM · Restricted Project, Restricted Project, Restricted Project
AlexanderHederstaf updated the diff for D144709: [clang-format] Improve QualifierAlignment.

Add extra tests based on https://github.com/llvm/llvm-project/issues/56111

Mar 6 2023, 12:39 AM · Restricted Project, Restricted Project, Restricted Project

Mar 4 2023

AlexanderHederstaf added inline comments to D144709: [clang-format] Improve QualifierAlignment.
Mar 4 2023, 7:37 AM · Restricted Project, Restricted Project, Restricted Project

Mar 2 2023

AlexanderHederstaf added a comment to D144709: [clang-format] Improve QualifierAlignment.

Thanks for the comments and help on this review. There are a lot of special cases I had not considered before, and while it works on the clang/ and llvm/ subfolders as well as tests and the other repository I tested on, I suppose there could still be some hidden issues. Allowing any identifier without the requirement that it is a pointer type adds a lot of complexity.

Mar 2 2023, 11:31 PM · Restricted Project, Restricted Project, Restricted Project

Mar 1 2023

AlexanderHederstaf requested review of D144709: [clang-format] Improve QualifierAlignment.
Mar 1 2023, 12:48 PM · Restricted Project, Restricted Project, Restricted Project
AlexanderHederstaf planned changes to D144709: [clang-format] Improve QualifierAlignment.
Mar 1 2023, 12:48 PM · Restricted Project, Restricted Project, Restricted Project
AlexanderHederstaf added a comment to D144709: [clang-format] Improve QualifierAlignment.

I used clang-format on all files in clang/ and llvm/, where I had added QualifierAlignment: Right to any .clang-format. I built with

cmake -S llvm -B build -G Ninja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS="clang"
cmake --build build

Is that sufficient or did you imagine some other build?

Mar 1 2023, 8:09 AM · Restricted Project, Restricted Project, Restricted Project
AlexanderHederstaf updated the diff for D144709: [clang-format] Improve QualifierAlignment.

Change order for typename and :: as
const typename ::Bar b; is valid code.

Mar 1 2023, 5:23 AM · Restricted Project, Restricted Project, Restricted Project
AlexanderHederstaf added a comment to D144709: [clang-format] Improve QualifierAlignment.

As tests currently fail can you set it to "planned changes" until they pass

[  FAILED  ] 5 tests, listed below:
[  FAILED  ] QualifierFixerTest.RightQualifier
[  FAILED  ] QualifierFixerTest.LeftQualifier
[  FAILED  ] QualifierFixerTest.ConstVolatileQualifiersOrder
[  FAILED  ] QualifierFixerTest.MoveConstBeyondType
[  FAILED  ] QualifierFixerTest.TemplatesRight
Mar 1 2023, 1:51 AM · Restricted Project, Restricted Project, Restricted Project
AlexanderHederstaf added a comment to D144709: [clang-format] Improve QualifierAlignment.

This code from llvm/tools/llvm-exegesis/lib/SerialSnippetGenerator.cpp failed with Right but without a full list of specifiers. As static was not configured, the } was not discovered by IsRightQualifier. Changed some of the qualifier tests to check against the full list instead.

Mar 1 2023, 1:50 AM · Restricted Project, Restricted Project, Restricted Project
AlexanderHederstaf updated the diff for D144709: [clang-format] Improve QualifierAlignment.

Distinguish configured qualifiers from other qualifiers.

Mar 1 2023, 1:44 AM · Restricted Project, Restricted Project, Restricted Project

Feb 28 2023

AlexanderHederstaf added a comment to D144709: [clang-format] Improve QualifierAlignment.

Discovered incorrect code generation for llvm/include/llvm/ADT/StringMap.h.

Feb 28 2023, 7:45 AM · Restricted Project, Restricted Project, Restricted Project
AlexanderHederstaf updated the diff for D144709: [clang-format] Improve QualifierAlignment.

Simplify insertQualifierAfter.
Ignore decltype, typeof, and _Atomic.
Set length of TT_TemplateCloser to 1.

Feb 28 2023, 7:42 AM · Restricted Project, Restricted Project, Restricted Project

Feb 27 2023

AlexanderHederstaf updated the diff for D144709: [clang-format] Improve QualifierAlignment.

Update commit message

Feb 27 2023, 8:08 AM · Restricted Project, Restricted Project, Restricted Project
AlexanderHederstaf retitled D144709: [clang-format] Improve QualifierAlignment from [clang-format] Improve left to right const to [clang-format] Improve QualifierAlignment.
Feb 27 2023, 8:06 AM · Restricted Project, Restricted Project, Restricted Project
AlexanderHederstaf added a comment to D144709: [clang-format] Improve QualifierAlignment.

There are a lot of complicated cases when trying to extend this functionality. I addressed a few more and thought that it might be acceptable to avoid adjusting the qualifiers for variable declared as

Feb 27 2023, 8:02 AM · Restricted Project, Restricted Project, Restricted Project
AlexanderHederstaf updated the diff for D144709: [clang-format] Improve QualifierAlignment.

Update right to left analyzer
Add support for requires clauses
Ignore usages of struct/class keyword

Feb 27 2023, 7:54 AM · Restricted Project, Restricted Project, Restricted Project
AlexanderHederstaf updated the diff for D144709: [clang-format] Improve QualifierAlignment.

Fix simple types not moving all the way right.

Feb 27 2023, 1:54 AM · Restricted Project, Restricted Project, Restricted Project
AlexanderHederstaf added a comment to D144709: [clang-format] Improve QualifierAlignment.

Fixed comments and rebased. Tested right to left on the output of left to right and discovered two cases where the output code would not compile. Added new tests for those cases and I am working on improvements for right to left.

Feb 27 2023, 1:15 AM · Restricted Project, Restricted Project, Restricted Project
AlexanderHederstaf updated the diff for D144709: [clang-format] Improve QualifierAlignment.

Rebase after change to pointer to member was merged.
Add case for typename used for nested dependent names.
Add assertions for template closers/openers.

Feb 27 2023, 1:13 AM · Restricted Project, Restricted Project, Restricted Project

Feb 25 2023

AlexanderHederstaf retitled D144709: [clang-format] Improve QualifierAlignment from [clang-format] Improve west to east const to [clang-format] Improve left to right const.
Feb 25 2023, 3:15 AM · Restricted Project, Restricted Project, Restricted Project
AlexanderHederstaf added a comment to D144709: [clang-format] Improve QualifierAlignment.

Thanks for the review so far!

Feb 25 2023, 3:11 AM · Restricted Project, Restricted Project, Restricted Project
AlexanderHederstaf updated the diff for D144709: [clang-format] Improve QualifierAlignment.

Add comments for different cases.
Add more tests.
Fix whitespace issue.

Feb 25 2023, 2:56 AM · Restricted Project, Restricted Project, Restricted Project

Feb 24 2023

AlexanderHederstaf added a comment to D144709: [clang-format] Improve QualifierAlignment.

Highlight by me. That is not acceptable, running the output of clang-format through clang-format shall not result in any change. In that case it's better to not touch it in any way.

Feb 24 2023, 2:52 PM · Restricted Project, Restricted Project, Restricted Project
AlexanderHederstaf updated the diff for D144709: [clang-format] Improve QualifierAlignment.

Add test with advanced type that would not work before.
Add pointer to member.

Feb 24 2023, 8:40 AM · Restricted Project, Restricted Project, Restricted Project
AlexanderHederstaf updated the diff for D144709: [clang-format] Improve QualifierAlignment.

Fixed the const/volatile placement. Added a few tests.

Feb 24 2023, 8:17 AM · Restricted Project, Restricted Project, Restricted Project
AlexanderHederstaf added a comment to D144709: [clang-format] Improve QualifierAlignment.

I will add new tests / examples as well as look into the volatile/const ordering.

Feb 24 2023, 4:22 AM · Restricted Project, Restricted Project, Restricted Project
AlexanderHederstaf updated the summary of D144709: [clang-format] Improve QualifierAlignment.
Feb 24 2023, 4:21 AM · Restricted Project, Restricted Project, Restricted Project
AlexanderHederstaf added a reviewer for D144709: [clang-format] Improve QualifierAlignment: MyDeveloperDay.

I tried to refactor QualifierAlignmentFixer to handle more types, notably removing the *,&,&& requirement as e.g. const Foo did not work. To avoid moving qualifiers too far, a test for "already east const" is introduced. However, to get the correct order for the east qualifiers Clang-Format must be used twice. I assume it's related to how fixes/replacements are handled. Would you like to have a look and perhaps suggest any improvements?

Feb 24 2023, 1:32 AM · Restricted Project, Restricted Project, Restricted Project
AlexanderHederstaf requested review of D144709: [clang-format] Improve QualifierAlignment.
Feb 24 2023, 1:18 AM · Restricted Project, Restricted Project, Restricted Project