Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(205)

Side by Side Diff: docs/writing_clang_plugins.md

Issue 2545363002: Use HTTPS links for Google domains in docs (Closed)
Patch Set: Modify two more files in subdirectories Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « docs/windows_split_dll.md ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Don't write a clang plugin 1 # Don't write a clang plugin
2 2
3 [TOC] 3 [TOC]
4 4
5 Make sure you really want to write a clang plugin. 5 Make sure you really want to write a clang plugin.
6 6
7 * The clang plugin api is not stable. If you write a plugin, _you_ are 7 * The clang plugin api is not stable. If you write a plugin, _you_ are
8 responsible for making sure it's updated when we update clang. 8 responsible for making sure it's updated when we update clang.
9 * If you're adding a generally useful warning, it should be added to upstream 9 * If you're adding a generally useful warning, it should be added to upstream
10 clang, not to a plugin. 10 clang, not to a plugin.
11 * You should not use a clang plugin to do things that can be done in a 11 * You should not use a clang plugin to do things that can be done in a
12 PRESUBMIT check (e.g. checking that the headers in a file are sorted). 12 PRESUBMIT check (e.g. checking that the headers in a file are sorted).
13 13
14 Valid reasons for writing a plugin are for example: 14 Valid reasons for writing a plugin are for example:
15 15
16 * You want to add a chromium-specific error message. 16 * You want to add a chromium-specific error message.
17 * You want to write an automatic code rewriter. 17 * You want to write an automatic code rewriter.
18 18
19 In both cases, please inform 19 In both cases, please inform
20 [clang@chromium.org](http://groups.google.com/a/chromium.org/group/clang/topics) 20 [clang@chromium.org](https://groups.google.com/a/chromium.org/group/clang/topics )
21 of your plans before you pursue them. 21 of your plans before you pursue them.
22 22
23 # Having said that 23 # Having said that
24 24
25 clang currently has minimal documentation on its plugin interface; it's mostly 25 clang currently has minimal documentation on its plugin interface; it's mostly
26 doxygen annotations in the source. This is an attempt to be half map to the 26 doxygen annotations in the source. This is an attempt to be half map to the
27 header files/half tutorial. 27 header files/half tutorial.
28 28
29 # Building your plugin 29 # Building your plugin
30 30
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after
151 If you want to add additional checks to the existing plugins, be sure to add the 151 If you want to add additional checks to the existing plugins, be sure to add the
152 new diagnostic behind a flag (there are several examples of this in the plugins 152 new diagnostic behind a flag (there are several examples of this in the plugins
153 already). The reason for this is that the plugin is bundled with clang, and the 153 already). The reason for this is that the plugin is bundled with clang, and the
154 new check will get deployed with the next clang roll. If your check fires, then 154 new check will get deployed with the next clang roll. If your check fires, then
155 the next clang roll would now be blocked on cleaning up the whole codebase for 155 the next clang roll would now be blocked on cleaning up the whole codebase for
156 your check – and even if the check doesn't fire at the moment, maybe that 156 your check – and even if the check doesn't fire at the moment, maybe that
157 regresses until the next clang roll happens. If your new check is behind a flag, 157 regresses until the next clang roll happens. If your new check is behind a flag,
158 then the clang roll can happen first, and you can add the flag to enable your 158 then the clang roll can happen first, and you can add the flag to enable your
159 check after that, and then turn on the check everywhere once you know that the 159 check after that, and then turn on the check everywhere once you know that the
160 codebase is clean. 160 codebase is clean.
OLDNEW
« no previous file with comments | « docs/windows_split_dll.md ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698