`NanPersistentToLocal` is inlined, creates a new `Local` and does not set up its own scope. The inlining ought to be as strict as possible, but that varies from compiler to compiler and situation to situation, so I would not trust it. Do add a NanScope() here to be sure, it's hardly performance-critical code either.