IMO it looks like both of them are wrong but for different reasons =pod L<#Has C<pod>> becomes # Pod::FormattingCode.new(type => "L", meta => [], config => {}, contents => ["#Has ", Pod::FormattingCode.new(type => "C", meta => [], config => {}, contents => ["pod"]), ""])
The L<> formatting code without a '|' should not contain a C<> formatting code it should just be taken verbatim. On Sat, Dec 26, 2015 at 9:12 AM Dave Rolsky <perl6-bugs-follo...@perl.org> wrote: > # New Ticket Created by Dave Rolsky > # Please include the string: [perl #127029] > # in the subject line of all future correspondence about this issue. > # <URL: https://rt.perl.org/Ticket/Display.html?id=127029 > > > > Here's an example: > > =begin pod > > L<It has pod|#Has C<pod>> > > =end pod > > dd $=pod[0]; > > The parser decides that the _first_ ">" ends the link, and that the second > ">" is a piece of plain text, which is clearly wrong. > > Note that writing this as L<<...>> doesn't fix the problem. > > The parser does get this right if there is no explicit link text: > > =begin pod > > L<#Has C<pod>> > > =end pod >