Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1265060
| From | conchur@web.de |
|---|---|
| Newsgroups | linux.kernel |
| Subject | kernel-doc: Fix stripping of #define in enums |
| Date | 2015-11-08 10:50 +0100 |
| Message-ID | <qsuLL-6QE-1@gated-at.bofh.it> (permalink) |
| Organization | linux.* mail to news gateway |
From: Conchúr Navid <conchur@web.de>
The regex to strip single line #define's in enumerations depends on the
fact that the defines are still stored on separate lines. But the
surrounding code already removed newlines and replaced them with
semicolons.
For example a simple input like
/**
* enum flags - test flags
* @flag1: first flag
* @flag2: second flag
* @flag3: third flag
* @flag4: fourth flag
*/
enum flags {
flag1 = BIT(0),
flag2 = BIT(1),
#define flags_small (flag1 | flag2)
flag3 = BIT(2),
flag4 = BIT(3),
#define flags_big (flag2 | flag3)
};
resulted in parsing warnings like
warning: Enum value '#define flags_small (flag1 | flag2);flag3 = BIT(2)' not described in enum 'flags'
warning: Enum value '#define flags_big (flag2 | flag3);' not described in enum 'flags'
Signed-off-by: Conchúr Navid <conchur@web.de>
---
scripts/kernel-doc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/scripts/kernel-doc b/scripts/kernel-doc
index 125b906..8313b49 100755
--- a/scripts/kernel-doc
+++ b/scripts/kernel-doc
@@ -1844,7 +1844,7 @@ sub dump_enum($$) {
my $file = shift;
$x =~ s@/\*.*?\*/@@gos; # strip comments.
- $x =~ s/^#\s*define\s+.*$//; # strip #define macros inside enums
+ $x =~ s@#\s*define\s+[^;]*;@@gos; # strip #define macros inside enums
if ($x =~ /enum\s+(\w+)\s*{(.*)}/) {
$declaration_name = $1;
--
2.6.2
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Back to linux.kernel | Previous | Next — Next in thread | Find similar | Unroll thread
kernel-doc: Fix stripping of #define in enums conchur@web.de - 2015-11-08 10:50 +0100
[PATCH 2/3] kernel-doc: Strip #ifdef/#endif in enums conchur@web.de - 2015-11-08 10:50 +0100
[PATCH 3/3] kernel-doc: Strip #ifdef/#endif in enums conchur@web.de - 2015-11-08 10:50 +0100
[PATCHv2 3/3] kernel-doc: Fix parsing of DECLARE_BITMAP in struct conchur@web.de - 2015-11-08 11:00 +0100
csiph-web