Revision tags: llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4 |
|
#
0f1c1be1 |
| 28-Aug-2023 |
Aaron Ballman <aaron@aaronballman.com> |
[clang] Remove rdar links; NFC
We have a new policy in place making links to private resources something we try to avoid in source and test files. Normally, we'd organically switch to the new policy
[clang] Remove rdar links; NFC
We have a new policy in place making links to private resources something we try to avoid in source and test files. Normally, we'd organically switch to the new policy rather than make a sweeping change across a project. However, Clang is in a somewhat special circumstance currently: recently, I've had several new contributors run into rdar links around test code which their patch was changing the behavior of. This turns out to be a surprisingly bad experience, especially for newer folks, for a handful of reasons: not understanding what the link is and feeling intimidated by it, wondering whether their changes are actually breaking something important to a downstream in some way, having to hunt down strangers not involved with the patch to impose on them for help, accidental pressure from asking for potentially private IP to be made public, etc. Because folks run into these links entirely by chance (through fixing bugs or working on new features), there's not really a set of problematic links to focus on -- all of the links have basically the same potential for causing these problems. As a result, this is an omnibus patch to remove all such links.
This was not a mechanical change; it was done by manually searching for rdar, radar, radr, and other variants to find all the various problematic links. From there, I tried to retain or reword the surrounding comments so that we would lose as little context as possible. However, because most links were just a plain link with no supporting context, the majority of the changes are simple removals.
Differential Review: https://reviews.llvm.org/D158071
show more ...
|
Revision tags: llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init |
|
#
e0ac46e6 |
| 17-Jul-2023 |
Mehdi Amini <joker.eph@gmail.com> |
Revert "Remove rdar links; NFC"
This reverts commit d618f1c3b12effd0c2bdb7d02108d3551f389d3d. This commit wasn't reviewed ahead of time and significant concerns were raised immediately after it land
Revert "Remove rdar links; NFC"
This reverts commit d618f1c3b12effd0c2bdb7d02108d3551f389d3d. This commit wasn't reviewed ahead of time and significant concerns were raised immediately after it landed. According to our developer policy this warrants immediate revert of the commit.
https://llvm.org/docs/DeveloperPolicy.html#patch-reversion-policy
Differential Revision: https://reviews.llvm.org/D155509
show more ...
|
#
d618f1c3 |
| 07-Jul-2023 |
Aaron Ballman <aaron@aaronballman.com> |
Remove rdar links; NFC
This removes links to rdar, which is an internal bug tracker that the community doesn't have visibility into.
See further discussion at: https://discourse.llvm.org/t/code-rev
Remove rdar links; NFC
This removes links to rdar, which is an internal bug tracker that the community doesn't have visibility into.
See further discussion at: https://discourse.llvm.org/t/code-review-reminder-about-links-in-code-commit-messages/71847
show more ...
|
Revision tags: llvmorg-16.0.6, llvmorg-16.0.5, llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3, llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7, llvmorg-15.0.6, llvmorg-15.0.5, llvmorg-15.0.4, llvmorg-15.0.3, working, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0 |
|
#
0cb08093 |
| 30-Aug-2022 |
Egor Zhdan <e_zhdan@apple.com> |
[Clang][Comments] Parse `<img src=""/>` in doc comments correctly
This is a valid HTML5 tag. Previously it triggered a Clang error (`HTML start tag prematurely ended, expected attribute name or '>'`
[Clang][Comments] Parse `<img src=""/>` in doc comments correctly
This is a valid HTML5 tag. Previously it triggered a Clang error (`HTML start tag prematurely ended, expected attribute name or '>'`) since Clang was treating `/>` as a text token. This was happening because after lexing the closing quote (`"`) the lexer state was reset to "Normal" while the tag was not actually closed yet: `>` was not yet parsed at that point.
rdar://91464292
Differential Revision: https://reviews.llvm.org/D132932
show more ...
|
Revision tags: llvmorg-15.0.0-rc3, llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init, llvmorg-14.0.6, llvmorg-14.0.5, llvmorg-14.0.4 |
|
#
d3a4033d |
| 13-May-2022 |
Aaron Puchert <aaron.puchert@sap.com> |
Comment parsing: Allow inline commands to have 0 or more than 1 argument
That's required to support `\n`, but can also be used for other commands. We already had the infrastructure in place to parse
Comment parsing: Allow inline commands to have 0 or more than 1 argument
That's required to support `\n`, but can also be used for other commands. We already had the infrastructure in place to parse a varying number of arguments, we simply needed to generalize it so that it would work not only for block commands.
This should fix #55319.
Reviewed By: gribozavr2
Differential Revision: https://reviews.llvm.org/D125429
show more ...
|
#
99d35826 |
| 13-May-2022 |
Aaron Puchert <aaron.puchert@sap.com> |
Comment parsing: Specify argument numbers for some block commands
The command traits have a member NumArgs for which all the parsing infrastructure is in place, but no command was setting it to a va
Comment parsing: Specify argument numbers for some block commands
The command traits have a member NumArgs for which all the parsing infrastructure is in place, but no command was setting it to a value other than 0. By doing so we get warnings when passing an empty paragraph to \retval (the first argument is the return value, then comes the description). We also take \xrefitem along for the ride, although as the documentation states it's unlikely to be used directly.
Reviewed By: gribozavr2
Differential Revision: https://reviews.llvm.org/D125422
show more ...
|
Revision tags: llvmorg-14.0.3, llvmorg-14.0.2, llvmorg-14.0.1, llvmorg-14.0.0, llvmorg-14.0.0-rc4, llvmorg-14.0.0-rc3, llvmorg-14.0.0-rc2, llvmorg-14.0.0-rc1, llvmorg-15-init, llvmorg-13.0.1, llvmorg-13.0.1-rc3 |
|
#
9f0fa654 |
| 14-Jan-2022 |
Aaron Puchert <aaron.puchert@sap.com> |
Comment parsing: Don't recognize commands in single-line double quotation
This is consistent with the behavior of Doxygen, and allows users to write strings with C escapes or document input/output f
Comment parsing: Don't recognize commands in single-line double quotation
This is consistent with the behavior of Doxygen, and allows users to write strings with C escapes or document input/output formats containing special characters (@ or \) without escaping them, which might be confusing. For example, if a function wants to document its expected input format as "user@host" it doesn't have to write user\@host instead, which would look right in the documentation but confusing in the code. Now users can just use double quotes (which they might do anyway).
This fixes a lot of false positives of -Wdocumentation-unknown-command, but it could also fix issues with -Wdocumentation if the text triggers an actual command.
Reviewed By: gribozavr2
Differential Revision: https://reviews.llvm.org/D116190
show more ...
|
Revision tags: llvmorg-13.0.1-rc2, llvmorg-13.0.1-rc1 |
|
#
4e7df1ef |
| 12-Nov-2021 |
Aaron Puchert <aaron.puchert@sap.com> |
Comment AST: Find out if function is variadic in DeclInfo::fill
Then we don't have to look into the declaration again. Also it's only natural to collect this information alongside parameters and ret
Comment AST: Find out if function is variadic in DeclInfo::fill
Then we don't have to look into the declaration again. Also it's only natural to collect this information alongside parameters and return type, as it's also just a parameter in some sense.
Reviewed By: gribozavr2
Differential Revision: https://reviews.llvm.org/D113690
show more ...
|
#
63ef0e17 |
| 09-Nov-2021 |
Aaron Puchert <aaron.puchert@sap.com> |
Comment AST: Add support for variable templates
We treat them as variables of course, though if they have function pointer type we treat them as functions, i.e. allow parameter and return value spec
Comment AST: Add support for variable templates
We treat them as variables of course, though if they have function pointer type we treat them as functions, i.e. allow parameter and return value specifications. Just like VarDecls.
Reviewed By: gribozavr2
Differential Revision: https://reviews.llvm.org/D111266
show more ...
|
#
4d638243 |
| 09-Nov-2021 |
Aaron Puchert <aaron.puchert@sap.com> |
Comment AST: Declare function pointer variables as functions
We were doing this already for type aliases, and it deduplicates the code looking through aliases and pointers to find a function type. A
Comment AST: Declare function pointer variables as functions
We were doing this already for type aliases, and it deduplicates the code looking through aliases and pointers to find a function type. As a side effect, this finds two warnings that we apparently missed before.
Reviewed By: gribozavr2
Differential Revision: https://reviews.llvm.org/D111264
show more ...
|
Revision tags: llvmorg-13.0.0, llvmorg-13.0.0-rc4, llvmorg-13.0.0-rc3, llvmorg-13.0.0-rc2, llvmorg-13.0.0-rc1, llvmorg-14-init, llvmorg-12.0.1, llvmorg-12.0.1-rc4, llvmorg-12.0.1-rc3, llvmorg-12.0.1-rc2, llvmorg-12.0.1-rc1, llvmorg-12.0.0, llvmorg-12.0.0-rc5, llvmorg-12.0.0-rc4, llvmorg-12.0.0-rc3, llvmorg-12.0.0-rc2, llvmorg-11.1.0, llvmorg-11.1.0-rc3, llvmorg-12.0.0-rc1, llvmorg-13-init, llvmorg-11.1.0-rc2, llvmorg-11.1.0-rc1, llvmorg-11.0.1, llvmorg-11.0.1-rc2, llvmorg-11.0.1-rc1, llvmorg-11.0.0, llvmorg-11.0.0-rc6, llvmorg-11.0.0-rc5, llvmorg-11.0.0-rc4, llvmorg-11.0.0-rc3, llvmorg-11.0.0-rc2, llvmorg-11.0.0-rc1, llvmorg-12-init, llvmorg-10.0.1, llvmorg-10.0.1-rc4, llvmorg-10.0.1-rc3, llvmorg-10.0.1-rc2, llvmorg-10.0.1-rc1, llvmorg-10.0.0, llvmorg-10.0.0-rc6, llvmorg-10.0.0-rc5, llvmorg-10.0.0-rc4 |
|
#
f23df1b2 |
| 05-Mar-2020 |
Aaron Puchert <aaron.puchert@sap.com> |
Comment parsing: Treat \ref as inline command
Summary: It's basically Doxygen's version of a link and can happen anywhere inside of a paragraph. Fixes a bogus warning about empty paragraphs when a p
Comment parsing: Treat \ref as inline command
Summary: It's basically Doxygen's version of a link and can happen anywhere inside of a paragraph. Fixes a bogus warning about empty paragraphs when a parameter description starts with a link.
Reviewers: gribozavr2
Reviewed By: gribozavr2
Differential Revision: https://reviews.llvm.org/D75632
show more ...
|
Revision tags: llvmorg-10.0.0-rc3, llvmorg-10.0.0-rc2, llvmorg-10.0.0-rc1, llvmorg-11-init |
|
#
be1a9b38 |
| 21-Dec-2019 |
Mark de Wever <koraq@xs4all.nl> |
[Wdocumentation] Implement \anchor
Differential revision: https://reviews.llvm.org/D69223
|
Revision tags: llvmorg-9.0.1, llvmorg-9.0.1-rc3 |
|
#
b6d386f6 |
| 10-Dec-2019 |
Mark de Wever <koraq@xs4all.nl> |
[Wdocumentation] Use C2x/C++14 deprecated attribute
This replaces the non-standard __attribute__((deprecated)) with the standard [[deprecated]] when compiling in C2x/C++14 mode.
Discovered while lo
[Wdocumentation] Use C2x/C++14 deprecated attribute
This replaces the non-standard __attribute__((deprecated)) with the standard [[deprecated]] when compiling in C2x/C++14 mode.
Discovered while looking at https://bugs.llvm.org/show_bug.cgi?id=43753
Differential Revision: https://reviews.llvm.org/D71141
show more ...
|
#
b972f2d0 |
| 10-Dec-2019 |
Mark de Wever <koraq@xs4all.nl> |
[Wdocumentation] Properly place deprecated attribute
It is now placed before the function: - allows to replace __attribute__((deprecated)) with [[deprecated]]. - required for trailing returns.
Fixe
[Wdocumentation] Properly place deprecated attribute
It is now placed before the function: - allows to replace __attribute__((deprecated)) with [[deprecated]]. - required for trailing returns.
Fixes bug: https://bugs.llvm.org/show_bug.cgi?id=43753
Differential Revision: https://reviews.llvm.org/D71140
show more ...
|
#
85fff898 |
| 10-Dec-2019 |
Mark de Wever <koraq@xs4all.nl> |
[Wdocumentation] Use the command marker.
Use the proper marker for -Wdocumentation-deprecated-sync instead of hard-coded the backslash.
Discovered while looking at https://bugs.llvm.org/show_bug.cg
[Wdocumentation] Use the command marker.
Use the proper marker for -Wdocumentation-deprecated-sync instead of hard-coded the backslash.
Discovered while looking at https://bugs.llvm.org/show_bug.cgi?id=43753
Differential Revision: https://reviews.llvm.org/D71139
show more ...
|
Revision tags: llvmorg-9.0.1-rc2, llvmorg-9.0.1-rc1 |
|
#
a433e714 |
| 13-Nov-2019 |
Sam McCall <sam.mccall@gmail.com> |
[AST] Attach comment in `/** doc */ typedef struct A {} B` to B as well as A.
Summary: Semantically they're the same thing, and it's important when the underlying struct is anonymous.
There doesn't
[AST] Attach comment in `/** doc */ typedef struct A {} B` to B as well as A.
Summary: Semantically they're the same thing, and it's important when the underlying struct is anonymous.
There doesn't seem to be a problem attaching the same comment to multiple things as it already happens with `/** doc */ int a, b;`
This affects an Index test but the results look better (name present, USR points to the typedef).
Fixes https://github.com/clangd/clangd/issues/189
Reviewers: kadircet, lh123
Subscribers: ilya-biryukov, jkorous, arphaman, usaxena95, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D70203
show more ...
|
Revision tags: llvmorg-9.0.0, llvmorg-9.0.0-rc6, llvmorg-9.0.0-rc5, llvmorg-9.0.0-rc4 |
|
#
d94b42f4 |
| 02-Sep-2019 |
Dmitri Gribenko <gribozavr@gmail.com> |
[Wdocumentation] fixes an assertion failure with typedefed function and block pointer
Summary: The assertion happens when compiling with -Wdocumentation with variable declaration to a typedefed func
[Wdocumentation] fixes an assertion failure with typedefed function and block pointer
Summary: The assertion happens when compiling with -Wdocumentation with variable declaration to a typedefed function pointer. I not too familiar with the ObjC syntax but first two tests assert without this patch.
Fixes https://bugs.llvm.org/show_bug.cgi?id=42844
Reviewers: gribozavr
Reviewed By: gribozavr
Subscribers: cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D66706
llvm-svn: 370677
show more ...
|
Revision tags: llvmorg-9.0.0-rc3 |
|
#
c955e4a9 |
| 25-Aug-2019 |
Dmitri Gribenko <gribozavr@gmail.com> |
[Wdocumentation] improve wording of a warning message
Based on @davezarzycki remarks in D64696 improved the wording of the warning message.
Differential Revision: https://reviews.llvm.org/D66700
P
[Wdocumentation] improve wording of a warning message
Based on @davezarzycki remarks in D64696 improved the wording of the warning message.
Differential Revision: https://reviews.llvm.org/D66700
Patch by Mark de Wever.
llvm-svn: 369873
show more ...
|
#
982b105d |
| 20-Aug-2019 |
Stephan Bergmann <sbergman@redhat.com> |
Rudimentary support for Doxygen \retval command
...so that at least a preceding \param etc. that lacks a description gets a -Wdocumentation warning (instead of erroneously treating the \retval ... t
Rudimentary support for Doxygen \retval command
...so that at least a preceding \param etc. that lacks a description gets a -Wdocumentation warning (instead of erroneously treating the \retval ... text as its paragraph).
Differential Revision: https://reviews.llvm.org/D66350
llvm-svn: 369345
show more ...
|
Revision tags: llvmorg-9.0.0-rc2 |
|
#
657330ee |
| 05-Aug-2019 |
Dmitri Gribenko <gribozavr@gmail.com> |
Adds a warning when an inline Doxygen comment has no argument
Summary: It warns for for comments like /** \pre \em */
where \em has no argument
This warning is enabled with the -Wdocumentation opt
Adds a warning when an inline Doxygen comment has no argument
Summary: It warns for for comments like /** \pre \em */
where \em has no argument
This warning is enabled with the -Wdocumentation option.
Reviewers: gribozavr, rsmith
Reviewed By: gribozavr
Subscribers: cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D64696
Patch by Mark de Wever.
llvm-svn: 367809
show more ...
|
Revision tags: llvmorg-9.0.0-rc1, llvmorg-10-init, llvmorg-8.0.1, llvmorg-8.0.1-rc4, llvmorg-8.0.1-rc3, llvmorg-8.0.1-rc2, llvmorg-8.0.1-rc1, llvmorg-8.0.0, llvmorg-8.0.0-rc5, llvmorg-8.0.0-rc4, llvmorg-8.0.0-rc3, llvmorg-7.1.0, llvmorg-7.1.0-rc1, llvmorg-8.0.0-rc2, llvmorg-8.0.0-rc1, llvmorg-7.0.1, llvmorg-7.0.1-rc3, llvmorg-7.0.1-rc2, llvmorg-7.0.1-rc1 |
|
#
c6fbfd84 |
| 02-Oct-2018 |
Reid Kleckner <rnk@google.com> |
Remove spurious assertion in -Wdocumentation
Some code in OpenCV uses interesting doxygen directives that make it so we don't see any tokens inside a @note, despite there definitely being non-whites
Remove spurious assertion in -Wdocumentation
Some code in OpenCV uses interesting doxygen directives that make it so we don't see any tokens inside a @note, despite there definitely being non-whitespace characters there. The consistency check isn't needed. ParagraphComment supports receiving an empty list of comments.
Fixes PR39007
llvm-svn: 343641
show more ...
|
Revision tags: llvmorg-7.0.0, llvmorg-7.0.0-rc3, llvmorg-7.0.0-rc2, llvmorg-7.0.0-rc1, llvmorg-6.0.1, llvmorg-6.0.1-rc3, llvmorg-6.0.1-rc2, llvmorg-6.0.1-rc1, llvmorg-5.0.2, llvmorg-5.0.2-rc2, llvmorg-5.0.2-rc1, llvmorg-6.0.0, llvmorg-6.0.0-rc3, llvmorg-6.0.0-rc2, llvmorg-6.0.0-rc1, llvmorg-5.0.1, llvmorg-5.0.1-rc3, llvmorg-5.0.1-rc2, llvmorg-5.0.1-rc1 |
|
#
e9baea81 |
| 06-Oct-2017 |
Alex Lorenz <arphaman@gmail.com> |
-Wdocumentation should allow '...' params in variadic function type aliases
rdar://34811344
llvm-svn: 315103
|
Revision tags: llvmorg-5.0.0, llvmorg-5.0.0-rc5, llvmorg-5.0.0-rc4, llvmorg-5.0.0-rc3, llvmorg-5.0.0-rc2, llvmorg-5.0.0-rc1 |
|
#
533777f2 |
| 02-Jul-2017 |
Hiroshi Inoue <inouehrs@jp.ibm.com> |
fix trivial typos in comments; NFC
llvm-svn: 306969
|
Revision tags: llvmorg-4.0.1, llvmorg-4.0.1-rc3, llvmorg-4.0.1-rc2, llvmorg-4.0.1-rc1 |
|
#
6b82a75d |
| 21-Apr-2017 |
Alex Lorenz <arphaman@gmail.com> |
[PR32667] -Wdocumentation should allow @param/@returns for fields/variables that have a function/block pointer type
This commit improves the -Wdocumentation warning by making sure that @param and @r
[PR32667] -Wdocumentation should allow @param/@returns for fields/variables that have a function/block pointer type
This commit improves the -Wdocumentation warning by making sure that @param and @returns commands won't trigger warnings when used for fields, variables, or properties whose type is a function/block pointer type. The function/block pointer type must be specified directly with the declaration, and when a typedef is used the warning is still emitted.
In the future we might also want to handle the std::function type as well.
rdar://24978538
llvm-svn: 300981
show more ...
|
Revision tags: llvmorg-4.0.0, llvmorg-4.0.0-rc4, llvmorg-4.0.0-rc3, llvmorg-4.0.0-rc2, llvmorg-4.0.0-rc1, llvmorg-3.9.1, llvmorg-3.9.1-rc3, llvmorg-3.9.1-rc2, llvmorg-3.9.1-rc1 |
|
#
6080bdbe |
| 25-Aug-2016 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
[Sema][Comments] Add support for TypeAliasTemplate
Emit proper diagnostics when -Wdocumentation is used with constructs such as:
template<typename T> using fn = int(T aaa, int ccc);
Previously
[Sema][Comments] Add support for TypeAliasTemplate
Emit proper diagnostics when -Wdocumentation is used with constructs such as:
template<typename T> using fn = int(T aaa, int ccc);
Previously clang wouldn't recognize the function and complain with 'comment that is not attached to a function declaration'.
Differential Revision: https://reviews.llvm.org/D23860
rdar://problem/27300695
llvm-svn: 279754
show more ...
|