Google Apps Script Redeclaration of Const Error

UPDATE: Using the new runtime (V8) the code in the questions doesn't throw the error anymore, but disabling it, the old runtime (Rhino) still throws the error.

From Apps Script const scoping problems

Avoid using const in Apps Script for now. It just doesn't work as it should. For now it's just a half baked version of var.

The above was referring to using the runtime available at the time that it was published, before the new runtime was available.

From the same source

Apps Script is based on ES3 JavaScript, with quite a few additions from ES5 and even ES6.

To read the primary source go to https://developers.google.com/apps-script/guides/services/#basic_javascript_features


Seems like it's due to spotty implementation of ES6. I still get the error if I remove foo from the function, so the error is coming from the global const declaration. The below code produces the same error, but no error if you comment out const foo.

const foo = 2;

function bar() {
  const bar = 2;
  Logger.log(bar + 2);
}

See Google Apps Script Javascript Standard Support, in particular the first comment.