Pārlūkot izejas kodu

doc-rst: parse-headers: fix multiline typedef handler

The typedef handler should do two things to be generic:
  1) parse typedef enums;
  2) accept both possible syntaxes:
	 typedef struct foo { .. } foo_t;
	 typedef struct { .. } foo_t;

Unfortunately, this is needed to parse some legacy DVB
files, like dvb/audio.h.

Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
Mauro Carvalho Chehab 9 gadi atpakaļ
vecāks
revīzija
4ff916a0c9
1 mainītis faili ar 4 papildinājumiem un 3 dzēšanām
  1. 4 3
      Documentation/sphinx/parse-headers.pl

+ 4 - 3
Documentation/sphinx/parse-headers.pl

@@ -109,10 +109,11 @@ close IN;
 # Handle multi-line typedefs
 #
 
-my @matches = $data =~ m/typedef\s+struct\s+\S+\s*\{[^\}]+\}\s*(\S+)\s*\;/g;
+my @matches = ($data =~ m/typedef\s+struct\s+\S+?\s*\{[^\}]+\}\s*(\S+)\s*\;/g,
+	       $data =~ m/typedef\s+enum\s+\S+?\s*\{[^\}]+\}\s*(\S+)\s*\;/g,);
 foreach my $m (@matches) {
-		my $s = $1;
-		my $n = $1;
+		my $s = $m;
+		my $n = $m;
 		$n =~ tr/A-Z/a-z/;
 		$n =~ tr/_/-/;