On 07.04.2018 00:25, Philip Martin wrote:
> Philip Martin <phi...@codematters.co.uk> writes:
>
>>        Iterator iter(get_iterator());
>>        while (iter.has_next())
>> +      {
>> +        m_env.PushLocalFrame(10);
>>          function(T(m_env, NativeT(iter.next())));
>> +        m_env.PopLocalFrame();
>> +      }
>>        return function;
> Rewriting as:
>
>       while (iter.has_next())
>       {
>         NativeT nt(iter.next());
>         m_env.PushLocalFrame(10);
>         T t(m_env, nt);
>         function(t);
>         m_env.PopLocalFrame();
>       }
>
> also removes the warning, but if I move the T construction before the
> PushLocalframe then the warning returns.  T is JavaHL:ExternalItem.

I'll take another look. At the very least this should be using the local
frame manager object, which is exception-safe, unlike explicitly pushing
and popping the frame.

-- Brane

Reply via email to