Small clarification: The code is actually called, but the local variables are not maintained. Looks like this bug may have come back:
Local non-static variables in recursive functions did not hold unique values at each level of recursion (they acted like global variables throughout the function call). Now their values work independently in each call.
Yann, change your text to: "["&first&"]"&newline
The code is being called, but it was only showing newlines. Now you'll see text is being output.