VerifyError: Bad type on operand stack

A. Sundararajan sundararajan.athijegannathan at
Wed Sep 18 04:16:12 PDT 2013

Fix is already in nashorn repo @

changeset:   553:f1fd5f0bc84c
user:        attila
date:        Mon Sep 16 14:44:20 2013 +0200
summary:     8024846: keep separate internal arguments variable

It'll go into jdk8 main repo and jdk8 early access build sometime soon. 
In the interim, please pull the above mercurial repo and build 
nashorn.jar from the same.

Other workaround is to rename 'arguments' to some other name - i.e., if 
you don't want to pull nashorn and build.

Hope this helps

On Wednesday 18 September 2013 04:27 PM, Tal Liron wrote:
> Any possible workaround for now so that I can continue testing with 
> this huge application?
> On 09/14/2013 04:04 PM, A. Sundararajan wrote:
>> Hi,
>> Thanks for the simplified test case. Even simpler test is as follows:
>> function func(obj) {
>>     var arguments = obj;
>>     for (var i in arguments) {
>>     }
>>     return obj;
>> }
>> I suspect the issue has to do with handling of 'arguments' shadowing 
>> by local var of "magic" arguments. Renaming arguments fixes it. And 
>> looks like the loop over arguments is needed as well. I'll file a bug.
>> Thanks again,
>> -Sundar
>> On Saturday 14 September 2013 09:12 AM, Tal Liron wrote:
>>> Hm, I think the mailing list doesn't support attachments. Here is a 
>>> link to the file that causes the VerifyError:
>>> On 09/13/2013 03:38 PM, Tal Liron wrote:
>>>> Hi Attila, I am attaching the file. I didn't attach it originally, 
>>>> because I thought it would be impossible for you to test: it is 
>>>> normally run from within an embedded environment based on 
>>>> Scripturian/Sincerity. However, I am happy say that i tried anyway 
>>>> and the exact same exception is reproducible even with jjs. Note 
>>>> that "jjs --compile-only" completes without error.
>>>> -Tal

More information about the nashorn-dev mailing list