Mantis - Quercus
Viewing Issue Advanced Details
2919 minor always 09-10-08 18:54 09-11-08 14:15
koreth  
ferg  
normal  
closed 3.2.1  
fixed  
none    
none 3.2.1  
0002919: Compile error when defining fallback implementation of apc_fetch
We have code like the following in a script that can be run from the command line, where apc_fetch isn't defined:

<?php
if (!function_exists('apc_fetch')) {
  function apc_fetch($key) { return false; }
}

This fails to compile:

[18:51:15.783] {resin-21} com.caucho.java.JavaCompileException: .../test__php.java:56: v_key is already defined in call(com.caucho.quercus.env.Env,com.caucho.quercus.env.Value)
[18:51:15.783] {resin-21} Value v_key = NullValue.NULL;
[18:51:15.783] {resin-21} ^
[18:51:15.783] {resin-21} 1 error

The same error happens on our similar fallback definition of apc_store(). It does not happen if I just have a parameter called "$key" in some random other function.

Low priority since I can just comment this out in our code for testing purposes.

Notes
(0003420)
ferg   
09-11-08 11:36   
I can't reproduce this. That code snippet works fine for me. Is it possible to either create a more complete test case or send the generated code?
(0003423)
koreth   
09-11-08 12:03   
That exact test case causes the error for me. The original real-world case is of course part of a larger file but before filing the bug I tested it in isolation and got the same error.

Just tried again and it still happens with a clean build of Resin/Pro. Maybe there's a fix in the internal code base you're using that hasn't been pushed out to the public svn servers yet?
(0003425)
ferg   
09-11-08 12:39   
I just checked in the most recent changes.
(0003426)
koreth   
09-11-08 13:52   
Updated Resin source from svn and the problem went away.
(0003428)
ferg   
09-11-08 14:15   
php/37f8