When ExecutionSignature references a number that is out of bound provide a better error message.
For example given the following:
typedef void ControlSignature(FieldIn<> position,
FieldIn<> value,
FieldOut<> clusterIdx,
FieldOut<> correction,
WholeArrayIn<> centers,
WholeArrayIn<> fnConsts,
WholeArrayIn<> fnSlopes);
typedef void ExecutionSignature(_1, _2, _3, _4, _5, _6, _7, _8, _9);
The compile error that _8
and _9
generate a compile errors in brigand::at instead of doing a compile time assert with a nice message.
Edited by Robert Maynard