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 08:55:48 -0700
commitbfe3887cc200ec2b63e6137c682602e31bb33fa1 (patch)
treedadc39ad0ecd9410112aa441f34b62849542bcdb
parentf77b78d931314d3e066266c23b44f90807ee5774 (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 d793001929cf..ba3d9dfada52 100755
--- a/scripts/kernel-doc
+++ b/scripts/kernel-doc
@@ -2044,6 +2044,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