In a strict-mode ES2015 implementation that fully supports proper tail calls (e.g. JavaScriptCore), what happens to the stack frame of the calling function when a `return` statement is a tail call?
'use strict';
function count(n) {
if (n === 0) return 'done';
return count(n - 1); // tail position
}
count(1e7);