--- /dev/null
+--TEST--
+Test complex class inheritance
+--SKIPIF--
+<?php if (!extension_loaded("pimple")) print "skip"; ?>
+--FILE--
+<?php
+class MyPimple extends Pimple\Container
+{
+ public function offsetget($o)
+ {
+ var_dump("hit offsetget in " . __CLASS__);
+ return parent::offsetget($o);
+ }
+}
+
+class TestPimple extends MyPimple
+{
+ public function __construct($values)
+ {
+ array_shift($values);
+ parent::__construct($values);
+ }
+
+ public function offsetget($o)
+ {
+ var_dump('hit offsetget in ' . __CLASS__);
+ return parent::offsetget($o);
+ }
+
+ public function offsetset($o, $v)
+ {
+ var_dump('hit offsetset');
+ return parent::offsetset($o, $v);
+ }
+}
+
+$defaultValues = array('foo' => 'bar', 88 => 'baz');
+
+$p = new TestPimple($defaultValues);
+$p[42] = 'foo';
+var_dump($p[42]);
+var_dump($p[0]);
+?>
+--EXPECT--
+string(13) "hit offsetset"
+string(27) "hit offsetget in TestPimple"
+string(25) "hit offsetget in MyPimple"
+string(3) "foo"
+string(27) "hit offsetget in TestPimple"
+string(25) "hit offsetget in MyPimple"
+string(3) "baz"
\ No newline at end of file