// "063.hac" should pass, will recursively instantiate ports
// demonstrating template actual forwarding
// copy-modified from "059.hac"

template <pint N>
defproc foo(bool a[N]) { }

template <pint X>
typedef	foo<X+1>	bar;

foo<4> goo;
bar<3> poo;		// N should refer to X+1
	// thus the actuals passed to the ports should already
	// be transformed for straightforward lookup.

poo = goo;		// should have identical type

