Your reported behaviour in 5.16.3 is what I expect. I do not have a 5.12.4 handy to test.
The look ahead is zero-width which means it does not consume any of the input. The regexp matches starting which the s so a % is placed before it. The regexp engine then resumes searching, at the next character and matches starting at the t. This process repeats until there is not enough hyphenated upper case letters to match.
In reply to Re: look-ahead greed changed between perl releases?
in thread look-ahead greed changed between perl releases? by raygun
<code> <a> <b> <big> <blockquote> <br /> <dd> <dl> <dt> <em> <font> <h1> <h2> <h3> <h4> <h5> <h6> <hr /> <i> <li> <nbsp> <ol> <p> <small> <strike> <strong> <sub> <sup> <table> <td> <th> <tr> <tt> <u> <ul>