templated C++ interface: specialize anonymous function arguments
templated C++ interface: specialize anonymous function arguments

If an argument is an anonymous function, then no template argument
needs to be introduced for its final tuple since this is always
Anonymous.

This is especially useful if the argument having an Anonymous final tuple
implies that the result also has an Anonymous final tuple
because the generator refuses to introduce methods
that return a type that should be an anonymous function
but that has a template argument final tuple instead.
This means that a specialized signature would need
to be specified that ensures the return type has a final Anonymous tuple.
In particular, to be able to export the function
isl_set_pw_aff_on_domain_val introduced in the next commit, a specialized

	{ { Domain, Anonymous }, { { Domain }, { Anonymous } } }

signature would need to be provided, while this commit ensures
that the current

	{ { Domain, Range }, { { Domain }, { Range } } }

works for isl_set_pw_aff_on_domain_val as well.

Signed-off-by: Sven Verdoolaege <dd860110a62b19214c4ee03aec0abffecb4e86b8@cerebras.net>

Meinersbur/isl,Meinersbur/isl,Meinersbur/isl,Meinersbur/isl