summaryrefslogtreecommitdiff
path: root/helpers
diff options
context:
space:
mode:
Diffstat (limited to 'helpers')
-rwxr-xr-xhelpers/scandoc27
1 files changed, 17 insertions, 10 deletions
diff --git a/helpers/scandoc b/helpers/scandoc
index 5a0ebb492..a35bdc269 100755
--- a/helpers/scandoc
+++ b/helpers/scandoc
@@ -187,16 +187,16 @@ sub skipBody {
$nest = 1;
-# for (;;) {
-# if (&matchRBracket) { $nest++; }
-# elsif (&matchLBracket) {
-# $nest--;
-# last if !$nest;
-# }
-# else {
-# last if ((($valid,) = &matchKW( "[^\{\}]")) && !$valid);
-# }
-# }
+ for (;;) {
+ if (&matchRBracket) { $nest++; }
+ elsif (&matchLBracket) {
+ $nest--;
+ last if !$nest;
+ }
+ else {
+ last if ((($valid,) = &matchKW( "[^\{\}]")) && !$valid);
+ }
+ }
}
# Skip a string. (multiline)
@@ -613,6 +613,13 @@ sub parseDeclaration {
elsif ((($valid,)=&matchKW( "friend\s*class" )) && $valid) {
&skipToSemi;
}
+ elsif ((($valid, $token) = &matchKW("extern\\s*\\\"C\\\"")) && $valid) {
+ &matchRBracket;
+ while (!&matchLBracket) {
+ &parseDeclaration( '' ) || die "Unmatched brace! line = $linenumber\n";
+ }
+ &matchSemi;
+ }
# elsif ($kw = &matchID) {
# $type = "$kw ";
#