Counter for GCC attributes.
authorRichard Levitte <levitte@openssl.org>
Thu, 3 Apr 2003 23:04:48 +0000 (23:04 +0000)
committerRichard Levitte <levitte@openssl.org>
Thu, 3 Apr 2003 23:04:48 +0000 (23:04 +0000)
util/mkdef.pl
util/mkerr.pl

index dc5b12b..4c15a94 100755 (executable)
@@ -833,14 +833,14 @@ sub do_defs
                        } elsif (/\(\*(\w*(\{[0-9]+\})?)\([^\)]+/) {
                                $s = $1;
                                print STDERR "DEBUG: found ANSI C function $s\n" if $debug;
-                       } elsif (/\w+\W+(\w+)\W*\(\s*\)$/s) {
+                       } elsif (/\w+\W+(\w+)\W*\(\s*\)(\s*__attribute__\(.*\)\s*)?$/s) {
                                # K&R C
                                print STDERR "DEBUG: found K&R C function $s\n" if $debug;
                                next;
-                       } elsif (/\w+\W+\w+(\{[0-9]+\})?\W*\(.*\)$/s) {
-                               while (not /\(\)$/s) {
-                                       s/[^\(\)]*\)$/\)/s;
-                                       s/\([^\(\)]*\)\)$/\)/s;
+                       } elsif (/\w+\W+\w+(\{[0-9]+\})?\W*\(.*\)(\s*__attribute__\(.*\)\s*)?$/s) {
+                               while (not /\(\)(\s*__attribute__\(.*\)\s*)?$/s) {
+                                       s/[^\(\)]*\)(\s*__attribute__\(.*\)\s*)?$/\)/s;
+                                       s/\([^\(\)]*\)\)(\s*__attribute__\(.*\)\s*)?$/\)/s;
                                }
                                s/\(void\)//;
                                /(\w+(\{[0-9]+\})?)\W*\(\)/s;
index f117860..cf34a35 100644 (file)
@@ -128,20 +128,20 @@ while (($hdr, $lib) = each %libinc)
            s/^[\n\s]*//g;
            s/[\n\s]*$//g;
            next if(/typedef\W/);
-           if (/\(\*(\w*)\([^\)]+/) {
+           if (/\(\*(\w*)\([^\)]+\)(\s*__attribute__\(.*\)\s*)?$/) {
                my $name = $1;
                $name =~ tr/[a-z]/[A-Z]/;
                $ftrans{$name} = $1;
-           } elsif (/\w+\W+(\w+)\W*\(\s*\)$/s){
+           } elsif (/\w+\W+(\w+)\W*\(\s*\)(\s*__attribute__\(.*\)\s*)?$/s){
                # K&R C
                next ;
-           } elsif (/\w+\W+\w+\W*\(.*\)$/s) {
-               while (not /\(\)$/s) {
-                   s/[^\(\)]*\)$/\)/s;
-                   s/\([^\(\)]*\)\)$/\)/s;
+           } elsif (/\w+\W+\w+\W*\(.*\)(\s*__attribute__\(.*\)\s*)?$/s) {
+               while (not /\(\)(\s*__attribute__\(.*\)\s*)?$/s) {
+                   s/[^\(\)]*\)(\s*__attribute__\(.*\)\s*)?$/\)/s;
+                   s/\([^\(\)]*\)\)(\s*__attribute__\(.*\)\s*)?$/\)/s;
                }
                s/\(void\)//;
-               /(\w+)\W*\(\)/s;
+               /(\w+(\{[0-9]+\})?)\W*\(\)/s;
                my $name = $1;
                $name =~ tr/[a-z]/[A-Z]/;
                $ftrans{$name} = $1;