Okay, seems to be the syntax error yes. The variable is replaced with the correct syntax and isn't replaced with the bad syntax. And it is tolerated at the on join.
I have always used the wrong syntax from 5.91 and just learned today that it was wrong. Sorry to disturb you.
Though it does strike me that it is tolerated with the on join and it isn't tolerated at the on part.