pbiggar / phc

A compiler for PHP
132 stars 37 forks source link

Assertion failure src/process_mir/Param_is_ref_uppering.cpp:84 #153

Open pbiggar opened 9 years ago

pbiggar commented 9 years ago
What steps will reproduce the problem?
1. Able to get rid of the assertion complaint by removing a static member function
call with an array parameter.  For example
   $x = class::member_function($y['SOMEID'])
2.
3.

What is the expected output? What do you see instead?
phc --obfuscate <filename>

What version of the product are you using? On what operating system?
Ubuntu 10.04

Please provide any additional information below.
Exact Message 

phc: src/process_mir/Param_is_ref_uppering.cpp:84: virtual void Param_is_ref_uppering::pre_assign_var(MIR::Assign_var*,
MIR::Statement_list*): Assertion `0' failed.

Original issue reported on code.google.com by mingtse@mapagogo.com on 2012-02-07 02:44:11

pbiggar commented 9 years ago
I'm afraid the best way to fix this will just be to dig in, unfortunately there's no
one working on phc right now. Param_is_ref is a check for whether a parameter is a
reference; "uppering" converts it back to PHP code for obfuscation. It looks like we
either forgot to handle a case, or else we're seeing something which should never have
gotten that far. Let me know if you tackle this, and if you need any more advice.

Original issue reported on code.google.com by paul.biggar on 2012-02-07 02:52:13