https://gcc.gnu.org/bugzilla/show_bug.cgi?id=11146
--- Comment #8 from Andrew Pinski <pinskia at gcc dot gnu.org> --- So we were doing: Define the macros @sc{__gnuc__}, @sc{__gnuc_minor__} Where texi2pod.pl does: s/\@sc\{([^\}]*)\}/\U$1/g; Which should be fine. It should have replaced @sc{__gnuc__} with __GNUC__. We do now: cpp.texi:defines @code{__GNUC__} to @var{x}, @code{__GNUC_MINOR__} to @var{y}, texi2pod.pl does this for @code: s/\@(?:code|kbd)\{([^\}]*)\}/C<$1>/g; Note @sc is defined at: https://www.gnu.org/software/texinfo/manual/texinfo/html_node/Smallcaps.html I suspect this was a pod2man bug, looking into the perl source base to find when the fix was included. There was some __ replacement rules in pod2man in the recent versions of perl.