From: Daniel Santos Date: Fri, 5 Oct 2012 00:15:05 +0000 (-0700) Subject: kernel-doc: bugfix - multi-line macros X-Git-Tag: firefly_0821_release~3680^2~1914^2~59 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=654784284430bf2739985914b65e09c7c35a7273;p=firefly-linux-kernel-4.4.55.git kernel-doc: bugfix - multi-line macros 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 Cc: Randy Dunlap Cc: Michal Marek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/scripts/kernel-doc b/scripts/kernel-doc index 8fd107a3fac4..2dea5f81baef 100755 --- a/scripts/kernel-doc +++ b/scripts/kernel-doc @@ -2046,6 +2046,9 @@ sub process_file($) { $section_counter = 0; while () { + while (s/\\\s*$//) { + $_ .= ; + } if ($state == 0) { if (/$doc_start/o) { $state = 1; # next line is always the function name