Actually, the call to ```parent``` should be:

```php
return parent::equals($item) || ($item instanceof self && $item->getVariant() === $this->variant);
```

I intentionally omit reference to parent as it is useless. The behaviour I want to change is the equality. In parent class, the equality and sameness are the same, but not in this CoreBundle\OrderItem