babel/packages
Alberto Piai 8f6d4ae5cf Fix typeof Symbol.prototype (#3686)
* formatting

* fix `typeof Symbol.prototype`

Babel uses a helper function to return the correct value for `typeof
obj` when obj is a Symbol and support for Symbol has been polyfilled.

This function assumes that `obj.constructor === Symbol` implies `typeof
obj === 'symbol'`.

This isn't true when obj is `Symbol.prototype`. In that case (REPL from
node 6, the same holds in Firefox):

```
> Symbol.prototype.constructor === Symbol
true
> typeof Symbol.prototype
'object'
>
```

AFAICS, that's the only case where the assumption doesn't hold.

The test added by this patch fails only on node 0.10, as 0.12 already
has a native implementation of Symbol and the polyfill code doesn't run.

This caused a problem in core-js when it's compiled with babel (the
issue was isolated by @skozin here:
https://github.com/zloirock/core-js/issues/189#issuecomment-209864582).
2016-09-20 12:19:09 -04:00
..
2016-02-12 11:29:58 -05:00
2016-05-02 19:43:49 -04:00
2016-05-17 14:49:17 -04:00
2016-05-02 19:43:49 -04:00
2016-05-17 14:49:17 -04:00
2016-05-02 19:43:49 -04:00
2016-05-17 14:49:17 -04:00
2016-05-02 19:43:49 -04:00
2016-05-02 19:43:49 -04:00
2016-05-02 19:43:49 -04:00
2016-05-02 19:43:49 -04:00
2016-05-17 14:49:17 -04:00
2016-05-02 19:43:49 -04:00
2016-05-02 19:43:49 -04:00
2016-08-04 19:34:51 -04:00
2016-08-04 19:34:51 -04:00
2016-08-04 19:34:51 -04:00
2016-08-04 19:34:51 -04:00
2016-08-04 19:34:51 -04:00
2016-08-04 19:34:51 -04:00
2016-05-02 19:43:49 -04:00
2016-05-02 19:43:49 -04:00
2016-05-02 19:43:49 -04:00
2016-09-01 11:03:06 -04:00
2016-07-12 22:33:58 -04:00
2016-08-24 17:40:46 -06:00
2016-08-24 17:40:46 -06:00
2016-06-27 17:19:48 -04:00
2016-02-06 19:06:41 -05:00
2016-08-04 19:34:51 -04:00
2016-08-04 19:34:51 -04:00
2016-06-26 20:21:26 -04:00
2016-07-26 18:12:25 -04:00
2016-09-01 11:03:06 -04:00
2015-10-29 17:51:24 +00:00

Woah, what's going on here?

A monorepo, muhahahahahaha. See the monorepo design doc for reasoning.