# Ich glaube, ich habe einen Bug gefunden: Miniracer stürzt bei gültiger ES6-Syntax ab

**URL:** <https://meta.discourse.org/t/i-think-i-found-a-bug-miniracer-crashes-with-valid-es6-syntax/78075>\
**Category:** Development\
**Created:** [15. Januar 2018 um 16:32 UTC](https://meta.discourse.org/t/i-think-i-found-a-bug-miniracer-crashes-with-valid-es6-syntax/78075 "2018-01-15T16:32:34Z")\
**Posts on this page:** 1\
**Showing post:** 1

<div class="post-metadata">

**Author:** ![sukima](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sukima/32/120437_2.png) [@sukima](https://meta.discourse.org/u/sukima)\
**Post date:** [15. Januar 2018 um 16:32 UTC](https://meta.discourse.org/t/i-think-i-found-a-bug-miniracer-crashes-with-valid-es6-syntax/78075/1 "2018-01-15T16:32:34Z")

</div>

This is quite frustrating and I’d love to understand how historically this has happened.

If I write the following **valid** ES6 code into `discourse/services/foo.js.es6` and add it to the asset pipeline in Discourse it will fail to compile:

```javascript
const FOO = 'foo';
export default Ember.Service.extend({
  [FOO]() {
    console.log('This should work');
  }
});

```

But alas I get:

```plaintext
Bundling assets
** Execute assets:precompile
rake aborted!
MiniRacer::RuntimeError: Error: Line 3: Unexpected token [
JavaScript at throwError (<anonymous>:2581:21)
JavaScript at throwUnexpected (<anonymous>:2643:9)
JavaScript at parseObjectProperty (<anonymous>:2914:17)
JavaScript at <anonymous>:5663:38
JavaScript at parseObjectInitialiser (<anonymous>:2943:24)
JavaScript at parsePrimaryExpression (<anonymous>:3082:20)
JavaScript at <anonymous>:5663:38
JavaScript at trackLeftHandSideExpressionAllowCall (<anonymous>:5565:61)
JavaScript at parsePostfixExpression (<anonymous>:3216:20)
JavaScript at <anonymous>:5663:38
/opt/bitnami/apps/discourse/htdocs/vendor/bundle/ruby/2.3.0/gems/mini_racer-0.1.9/lib/mini_racer.rb:168:in `eval_unsafe'
/opt/bitnami/apps/discourse/htdocs/vendor/bundle/ruby/2.3.0/gems/mini_racer-0.1.9/lib/mini_racer.rb:168:in `block (2 levels) in eval'
/opt/bitnami/apps/discourse/htdocs/vendor/bundle/ruby/2.3.0/gems/mini_racer-0.1.9/lib/mini_racer.rb:239:in `timeout'
/opt/bitnami/apps/discourse/htdocs/vendor/bundle/ruby/2.3.0/gems/mini_racer-0.1.9/lib/mini_racer.rb:167:in `block in eval'
/opt/bitnami/apps/discourse/htdocs/vendor/bundle/ruby/2.3.0/gems/mini_racer-0.1.9/lib/mini_racer.rb:64:in `block in with_lock'
/opt/bitnami/apps/discourse/htdocs/vendor/bundle/ruby/2.3.0/gems/mini_racer-0.1.9/lib/mini_racer.rb:64:in `synchronize'
/opt/bitnami/apps/discourse/htdocs/vendor/bundle/ruby/2.3.0/gems/mini_racer-0.1.9/lib/mini_racer.rb:64:in `with_lock'
/opt/bitnami/apps/discourse/htdocs/vendor/bundle/ruby/2.3.0/gems/mini_racer-0.1.9/lib/mini_racer.rb:165:in `eval'

```

I know this is valid syntax as babel and ember-cli handle this just fine. The [ES2015 specs (§12.2.6) even discuss it](https://www.ecma-international.org/ecma-262/6.0/#sec-object-initializer).

I have also tried this syntax:

```javascript
{
  [dynamicMethodName]: function() {}
}

```

And it too has the same error.

---

_[View the full topic](https://meta.discourse.org/t/i-think-i-found-a-bug-miniracer-crashes-with-valid-es6-syntax/78075)._
