Preserve annotation preserves names of global functions but renames invocations
This cart, when minified, will crash:

```lua
function --[[preserve]]obj_new()
 return {}
end

function _init()
 obj=obj_new()
end
```

The minified code (with line breaks) is:

```lua
function obj_new()
 return{}
end

function _init()
 n=u()
end
```

Strangely, if I use either the `global` or `member` annotations instead it works fine. It also works fine with no annotation.

Is this maybe the wrong way to preserve the names of these functions?
