Age | Commit message (Collapse) | Author | Files | Lines |
|
This allows RemoveParentheses to skip the invocations of function-like
macros.
Fixes #68354.
Fixes #147780.
|
|
|
|
This was done before in https://reviews.llvm.org/D46320
|
|
See
https://github.com/llvm/llvm-project/issues/65400#issuecomment-2922181979.
|
|
Fix #142818
|
|
These are identified by misc-include-cleaner. I've filtered out those
that break builds. Also, I'm staying away from llvm-config.h,
config.h, and Compiler.h, which likely cause platform- or
compiler-specific build failures.
|
|
Fix #62089
|
|
Fix #138097
|
|
Fix #138124
|
|
Fix #75815
|
|
|
|
Fix #74947
|
|
Fix #136814
|
|
Fix #135959
|
|
Fix #51940
|
|
Also remove redundant name qualifiers format::, FormatStyle::, and
LanguageKind::.
|
|
Formatting this piece of code made the program crash.
```
class TypedVecListRegOperand<RegisterClass Reg, int lanes, string eltsize>
: RegisterOperand<Reg, "printTypedVectorList<" # lanes # ", '"
# eltsize # "'>">;
```
The line starting with the `#` was treated as a separate preprocessor
directive line. Then the code dereferenced a null pointer when it tried
to continue parsing the first line that did not end in a semicolon.
Now the 2 problems are fixed.
|
|
This allows simplification of code that checks if a token is an
Objective-C keyword.
Also, delete the following in
UnwrappedLineParser::parseStructuralElement():
- an else-after-break in the tok::at case
- the copypasted code in the tok::objc_autoreleasepool case
|
|
Fix #134453
|
|
Fix #133873
|
|
Fix #132334
|
|
(#130471)
Also clean up `case tok::r_paren` in
`UnwrappedLineParser::parseParens()`.
Fix #130359
|
|
This effectively reverts d1aed486efc6d35a81ca4acbabb4203c4b91cda9
because of
#129426.
|
|
|
|
Fixes #113766
|
|
Fixes #105482
|
|
Closes #128120
|
|
Fixes #107616.
|
|
|
|
Fixes #124574.
|
|
Fixes #124921.
|
|
This restores the behavior before llvmorg-20-init.
Fixes #94184.
Fixes #117477.
Fixes #122690.
Fixes #123142.
|
|
This renames the `ExportBlockIndentation` option and adds a config parse
test, as requested in #110381.
|
|
indentation of `export { ... }` (#110381)
`export { ... }` blocks can get a bit long, so I thought it would make
sense to have an option that makes it so their contents are not indented
(basically the same argument as for namespaces).
This is based on the `NamespaceIndentation` option, except that there is
no option to control the behaviour of `export` blocks when nested because
nesting them doesn’t really make sense.
Additionally, brace wrapping of short `export { ... }` blocks is now controlled by the
`AllowShortBlocksOnASingleLine` option. There is no separate option just for `export`
blocks because you can just write e.g. `export int x;` instead of `export { int x; }`.
This closes #121723.
|
|
Fixes #123179.
|
|
(#121539)
Also, add `ST_CompoundRequirement` to help annotating */&/&& in compound
requirement expressions as `TT_BinaryOperator`.
Fixes #121471.
|
|
Fixes #105658.
|
|
For now, we only need to annotate the token after #error or #warning.
Fixes #117706.
|
|
|
|
Fixes #59066.
|
|
Fixes #118334.
|
|
This piece of code made the program crash.
```Verilog
function pkg::t get
(int t = 2,
int f = 2);
```
The way the code is supposed to be parsed is that UnwrappedLineParser
should identify the function header, and then TokenAnnotator should
recognize the result. But the code in UnwrappedLineParser would
mistakenly not recognize it due to the `::`. Then TokenAnnotator would
recognize the comma both as TT_VerilogInstancePortComma and
TT_VerilogTypeComma. The code for annotating the instance port comma
used `setFinalizedType`. The program would crash when it tried to set
it to another type.
The code in UnwrappedLineParser now recognizes the `::` token.
The are other cases in which TokenAnnotator would recognize the comma as
both of those types, for example if the `function` keyword is removed.
The type is now set using `setType` instead so that the program does not
crash. The developer no longer knows why he used `setFinalizedType`
back then.
|
|
Fixes #114408.
|
|
Fixes #113256.
|
|
This patch adjusts the requires clause/expression parser to imply a
requires clause if it is preceded by a bitwise and operator `&`, and
assume it is a reference qualifier. The justification is that bitwise
operations should not be used for requires expressions.
This is a band-aid fix. The real problems lie in the lookahead heuristic
in the same method. It may be worth it to rewrite that whole heuristic
to track more state in the future, instead of just blindly marching
forward across multiple unrelated definitions, since right now, the
definition following the one with the requires clause can influence
whether the heuristic chooses clause or expression.
Fixes https://github.com/llvm/llvm-project/issues/110485
|
|
Fixes #113011.
|
|
Fixes #112487.
|
|
without breaking internal structure (think Doxygen). (#96804)
* Convert `ReflowComments` from boolean into a new `enum` which can take
on the value `RCS_Never`, `RCS_IndentOnly`, or `RCS_Always`. The first
one is equivalent to the old `false`, the third one is `true`, and the
middle one means that multiline comments should only have their
indentation corrected, which is what Doxygen users will want.
* Preserve backward compatibility while parsing `ReflowComments`.
|
|
Fixes #110968.
|
|
Fixes #109925.
|