int main() { int a = 10; sub_call(); printf("%s %d\n",__FUNCTION__,__LINE__); sub_call(a); printf("%s %d\n",__FUNCTION__,__LINE__); return 0; }
const Array::Temp Call_stack::sub_list(const Scalar::Value& ref) { const int count = sub_call(ref.get_SV(true), G_ARRAY); return Array::Temp(interp, pop_array(count), true); }
const Scalar::Temp Call_stack::sub_scalar(const Scalar::Value& ref) { assertion<Runtime_exception>( sub_call(ref.get_SV(true), G_SCALAR) == 1, "More than one value returned in scalar call"); return Scalar::Temp(interp, pop(), true); }
const Array::Temp Call_stack::sub_list(const char* const name) { const int count = sub_call(name, G_ARRAY); return Array::Temp(interp, pop_array(count), true); }
const Scalar::Temp Call_stack::sub_scalar(const char* const name) { assertion<Runtime_exception>( sub_call(name, G_SCALAR) == 1, "More than one value returned in scalar call"); return Scalar::Temp(interp, pop(), true); }