The Lucee debugging log reports Implicit Variable Access when I do cfthread["threadname"] after a join.
There is no such thing as thread.cfthread, so what are you expecting us to type so that UndefinedImpl.java is not triggered?
It seems like this is an inconsistency or bug with the implicit checker since I don't think I can "fix" this in CFML code alone.
It looks simple to fix by preventing this line from running UndefinedImpl.java below pc.getThreadScope:
if (debug) debugCascadedAccess(pc, "thread", key);
It is probably better performance to do it there then have a true top level scope everywhere.
I made a commit with my suggested solution.
I've checked this ticket with your commit & After joining the threads, debugging logs doesn't show the cfthread under implicit variables. will confirm about this.
we cannot do it that way, that would no longer log implicit thread access