Due to CWG 777, the declaration is valid:
In a given function declaration, all each parameters subsequent to a
parameter with a default argument shall have a default arguments
supplied in this or a previous declarations or shall be a function
parameter pack.
Deduction should succeed in all three cases, since the default argument makes no difference to the nature of deduction: If no argument to the pack parameter args
is provided, it's deduced to the empty pack via [temp.arg.explicit]/3, otherwise the usual rule in [temp.deduct.call]/1 applies (as the pack is clearly not in a non-deduced context).