Hi Jürgen,
-for 1- In file native/template.hhthe comment states:
// mandatory functions
....
static Token *eval_fill_B*(Value_P B, const NativeFunction * caller);
However there is a fill function for argument B in template_f0:
#if defined TEMPLATE_F0
...
get_function_mux(const char * function_name)
{
....
if (!strcmp(function_name, "*eval_fill_B*"))
return reinterpret_cast<void *>(&*eval_fill_B*);
....
Compile without * if ... eval_fill_B .. * is OK
-for 2- in src/ScalarFunction.cc
it says
/* *eval_fill_B()* is called for:
1. a monadic scalar function with empty B, or ...
...
The Qs:
-1- F0 is niladic. What are the circumstances that *eval_fill_B()*
could get called?
-2- A monadic call to F12('lib_template_F12.so' ⎕FX 'F12')
with an empty B does not call *eval_fill_B(). *Why not?
F12 'b'
eval_B() called
⍝ as expected
F12 ⍬
eval_B() called
⍝ *eval_fill_B() called* expected too
What am I missing?
Best Regards
Hans-Peter