From 55c8af0d29e97571eaa9bbcffa216a005af1aa1d Mon Sep 17 00:00:00 2001 From: "wolfgang.laun@chello.at" Date: Sun, 30 May 2004 19:27:07 +0200 Subject: [PATCH] Re: [perl #29969] h2ph not correctly processing glibc sys/sysmacros.ph Message-Id: <20040530152707.ZLWL22856.viefep16-int.chello.at@localhost> p4raw-id: //depot/perl@22877 --- utils/h2ph.PL | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/utils/h2ph.PL b/utils/h2ph.PL index eaa019a..c5cc185 100644 --- a/utils/h2ph.PL +++ b/utils/h2ph.PL @@ -380,10 +380,16 @@ sub expr { }; # Eliminate typedefs /\(([\w\s]+)[\*\s]*\)\s*[\w\(]/ && do { + my $doit = 1; foreach (split /\s+/, $1) { # Make sure all the words are types, - last unless ($isatype{$_} or $_ eq 'struct' or $_ eq 'union'); + unless($isatype{$_} or $_ eq 'struct' or $_ eq 'union'){ + $doit = 0; + last; + } + } + if( $doit ){ + s/\([\w\s]+[\*\s]*\)// && next; # then eliminate them. } - s/\([\w\s]+[\*\s]*\)// && next; # then eliminate them. }; # struct/union member, including arrays: s/^([_A-Z]\w*(\[[^\]]+\])?((\.|->)[_A-Z]\w*(\[[^\]]+\])?)+)//i && do { -- 2.7.4