Subject: Re: bug#24309: 25.1; Problem in variable reference in docstrings.

From: Eli Zaretskii <[email-masked]>
Date: Fri, 26 Aug 2016 11:55:54 +0300

> From: Nathanael Schweers <[email-masked]>
> Date: Fri, 26 Aug 2016 01:07:06 +0200
> 
> 
> This bug applies to both the version given in the description
> (i.e. 25.1-RC2) and version 24.5 distributed on fedora.

Actually, Emacs has behaved like that since creation of hyper-links to
quoted symbols in doc strings was introduced in Emacs 20.3.

> - Start Emacs with “emacs -Q”.
> - evaluate these forms:
>   (defvar var "var" "docstring of var")
>   (defvar var* "var*" "docstring of var*")
>   (defvar *var "*var" "docstring of *var")
>   (defvar *var* "*var*" "docstring of *var*")
> 
>   (defun fun0 () "see variable ‘var’." var)
>   (defun fun1 () "see var*iable ‘var*’." var*)
>   (defun fun2 () "see *variable ‘*var’." *var)
>   (defun fun3 () "see *var*iable ‘*var*’." *var*)
> - See the docstrings of the defined functions.  For fun0 and fun1 the
>   reference to the variable is correct, for fun2 and fun3 they are not.

See help-xref-symbol-regexp, it requires that the first character
after the opening quote has the word syntax, not the symbol syntax.  I
don't know why is that, perhaps to avoid too many false positives or
something.  The comment there says this was done deliberately.