Mike,
Ok, so I can say that in my tests at least the module is being copied properly, but not to where you are looking - it is in var/run/classes/Xline/Module/Alinc/AlincTheme/View/ItemsList/UpsellingProducts/UpsellingProducts.php
that said, it's not running it, at least as far as I can tell. The copy as it appears in the var/run shows up as:
PHP Code:
<?php
namespace XLite\Module\Alinc\AlincTheme\View\ItemsList\UpsellingProducts;
/**
* Abstract widget
*/
abstract class UpsellingProducts extends \XLite\Module\XC\Upselling\View\ItemsList\UpsellingProductsAbstract implements \XLite\Base\IDecorator
{
protected function defineWidgetParams()
{
parent::defineWidgetParams();
$this->widgetParams[static::PARAM_DISPLAY_MODE] = new \XLite\Model\WidgetParam\Set('Display mode', static::DISPLAY_MODE_TABLE, true, array());
}
}
And it is in fact turning it into UpsellingProductsAbstract when it compiles.
Not sure why your code isn't making it at least that far,maybe an error in your Main.php? Attaching mine here.
And like yourself I couldn't find anyone who has made a module that extends another module, although obviously there will be cases where people want to do exactly that.