summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Santos <daniel.santos@pobox.com>2012-10-04 17:15:05 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-10-01 09:10:52 -0700
commit93751c2630fa7eb277b54274e7e7b6cd7660d9ac (patch)
tree5bf658fe530e16e57300aa6afd087de380d3d72f
parent43cbf1f46f0cdc56db7a424c6dda57bd9288376e (diff)
kernel-doc: bugfix - multi-line macros
commit 654784284430bf2739985914b65e09c7c35a7273 upstream. Prior to this patch the following code breaks: /** * multiline_example - this breaks kernel-doc */ #define multiline_example( \ myparam) Producing this error: Error(somefile.h:983): cannot understand prototype: 'multiline_example( \ ' This patch fixes the issue by appending all lines ending in a blackslash (optionally followed by whitespace), removing the backslash and any whitespace after it prior to appending (just like the C pre-processor would). This fixes a break in kerel-doc introduced by the additions to rbtree.h. Signed-off-by: Daniel Santos <daniel.santos@pobox.com> Cc: Randy Dunlap <rdunlap@xenotime.net> Cc: Michal Marek <mmarek@suse.cz> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Cc: Ben Hutchings <ben@decadent.org.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rwxr-xr-xscripts/kernel-doc3
1 files changed, 3 insertions, 0 deletions
diff --git a/scripts/kernel-doc b/scripts/kernel-doc
index 9b0c0b8b4ab4..55ab5e481966 100755
--- a/scripts/kernel-doc
+++ b/scripts/kernel-doc
@@ -2045,6 +2045,9 @@ sub process_file($) {
$section_counter = 0;
while (<IN>) {
+ while (s/\\\s*$//) {
+ $_ .= <IN>;
+ }
if ($state == 0) {
if (/$doc_start/o) {
$state = 1; # next line is always the function name