diff --git a/lib/modules/Tools.pmod/AutoDoc.pmod/PikeParser.pike b/lib/modules/Tools.pmod/AutoDoc.pmod/PikeParser.pike
index cfc77ecdef2bb6244acf575d7648c0a523f579ec..74478cc32049e5f517d13436d976bfbc39b43b02 100644
--- a/lib/modules/Tools.pmod/AutoDoc.pmod/PikeParser.pike
+++ b/lib/modules/Tools.pmod/AutoDoc.pmod/PikeParser.pike
@@ -197,9 +197,10 @@ string eatIdentifier(void|int allowScopePrefix) {
     parseError("expected identifier, got %O", s);
   readToken();
 
-  // Special hax for `->symbol and `->symbol=
-  if( s=="`->" && isIdent(peekToken()) )
+  // Special hax for `->symbol and `->symbol=, and `symbol and `symbol=
+  if( (s=="`->" || s=="`") && isIdent(peekToken()) )
   {
+    if (s == "`->") s = "`"; // Convert old to new syntax.
     s += readToken();
     if( peekToken()=="=" )
       s += readToken();