summaryrefslogtreecommitdiff
path: root/autodoc.pl
diff options
context:
space:
mode:
Diffstat (limited to 'autodoc.pl')
-rw-r--r--autodoc.pl6
1 files changed, 6 insertions, 0 deletions
diff --git a/autodoc.pl b/autodoc.pl
index 285bc3a5b3..91963ca5ac 100644
--- a/autodoc.pl
+++ b/autodoc.pl
@@ -132,6 +132,8 @@ sub docout ($$$) { # output the docs for one function
removed without notice.\n\n" if $flags =~ /x/;
$docs .= "NOTE: the perl_ form of this function is deprecated.\n\n"
if $flags =~ /p/;
+ $docs .= "NOTE: this function must be explicitly called as Perl_$name with an aTHX_ parameter.\n\n"
+ if $flags =~ /o/;
print $fh "=item $name\nX<$name>\n$docs";
@@ -141,6 +143,10 @@ removed without notice.\n\n" if $flags =~ /x/;
print $fh "\t\t$name;\n\n";
} elsif ($flags =~ /n/) { # no args
print $fh "\t$ret\t$name\n\n";
+ } elsif ($flags =~ /o/) { # no #define foo Perl_foo
+ print $fh "\t$ret\tPerl_$name";
+ print $fh "(" . (@args ? "pTHX_ " : "pTHX");
+ print $fh join(", ", @args) . ")\n\n";
} else { # full usage
print $fh "\t$ret\t$name";
print $fh "(" . join(", ", @args) . ")";