|
@@ -2506,7 +2506,13 @@ sub dump_function($$) {
|
|
$prototype =~ s/__must_check +//;
|
|
$prototype =~ s/__must_check +//;
|
|
$prototype =~ s/__weak +//;
|
|
$prototype =~ s/__weak +//;
|
|
my $define = $prototype =~ s/^#\s*define\s+//; #ak added
|
|
my $define = $prototype =~ s/^#\s*define\s+//; #ak added
|
|
- $prototype =~ s/__attribute__\s*\(\([a-z,]*\)\)//;
|
|
|
|
|
|
+ $prototype =~ s/__attribute__\s*\(\(
|
|
|
|
+ (?:
|
|
|
|
+ [\w\s]++ # attribute name
|
|
|
|
+ (?:\([^)]*+\))? # attribute arguments
|
|
|
|
+ \s*+,? # optional comma at the end
|
|
|
|
+ )+
|
|
|
|
+ \)\)\s+//x;
|
|
|
|
|
|
# Yes, this truly is vile. We are looking for:
|
|
# Yes, this truly is vile. We are looking for:
|
|
# 1. Return type (may be nothing if we're looking at a macro)
|
|
# 1. Return type (may be nothing if we're looking at a macro)
|