Hi,
I am looking at the argument types that can be passed into a function to
be called by map. As far as I can see this
void testMapFn1(arbb::f32& t1, arbb::f32 t2, arbb::dense t3, arbb::dense & t4) {
arbb::usize col;
position(col);
t1 = t2 + t3(col,0);
t4(col,0) = t1;
}
doesn't break any of the rules, but when i try and call it like
void testMapFn1Call(arbb::dense & t1, arbb::dense t2,
arbb::dense t3, arbb::dense & t4) {
arbb::map(testMapFn1)(t1,t2,t3,t4);
}
I get a stack of compilation errors.
Its related to the last argument, if I remove that argument
void testMapFn2(arbb::f32& t1, arbb::f32 t2, arbb::dense t3) {
arbb::usize col;
position(col);
t1 = t2 + t3(col,0);
}
and call it
void testMapFn2Call(arbb::dense & t1, arbb::dense t2, arbb::dense t3, arbb::dense & t4) {
arbb::map(testMapFn2)(t1,t2,t3);
}
then it compiles happily.
Have a mis-understood the rules about arguments to map functions ?
--
jason



