I agree if you if they were to be put as I did before in the HtmlHelper... That was stupid from my part.
There's no need to worry about named parameters if we get inside that if statement, because even an url like ``/pages/named:parameter/cool:stuff`` is supposed to be a single parameter if it was routed like ``/pages/**``. This is the behaviour we expect.
If there is no route matching ``**``, the code will flow by the elseif statement and everything will be like it was before, with no changes, right? 
As long as it doesn't match a route with ``**``, everything will be working as before.

This feature was introduced in 2.1 but looks like it was not entirely implemented since you can get to the right place from the request but you can't create a link to it.