Fix presence of unsigned in a parameter signature resetting the typename being constructed.
In the common case of using an unsigned parameter this was typically harmless.
When unsigned was used as part of a template type parameter this would overwrite the type info already built up, so:
array<unsigned int>
would become:
unsigned int>
The parameter types were being used only to generate the hash to pair with whatever clscan generates. The side effect of which being, any function that suffered from this problem would not have its call address patched up.