Bug - непоследовательная работа указателей (5.00, 2650)

 


//+------------------------------------------------------------------+
//|                                                201022_083730.mq5 |
//|                                    2019-2020, dimitri pecheritsa |
//|                                                 792112@gmail.com |
//+------------------------------------------------------------------+
#property copyright "2019-2020, dimitri pecheritsa"
#property link      "792112@gmail.com"
#property version   "1.00"
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   C201022_090654 c_1(new C201022_090641); //works
   C201022_090654 c_3(new C201022_092325(1)); //works
//---'new' - parameter passed as reference, variable expected
   C201022_090654 c_2(new C201022_090641(1)); //not works
  }
//+------------------------------------------------------------------+
//| class                                              201022_091826 |
//+------------------------------------------------------------------+
class C201022_091826
  {
protected:
public:
                     C201022_091826(void) {}
                    ~C201022_091826(void) {}
   //---
  };
//+------------------------------------------------------------------+
//| class                                              201022_090641 |
//+------------------------------------------------------------------+
class C201022_090641
  {
protected:
   C201022_091826    m_obj;
public:
                     C201022_090641(void) {}
                     C201022_090641(int) {}
   //---
  };
//+------------------------------------------------------------------+
//| class                                              201022_092325 |
//+------------------------------------------------------------------+
class C201022_092325
  {
protected:
public:
                     C201022_092325(void);
                     C201022_092325(int);
   //---
  };
//+------------------------------------------------------------------+
//| class                                              201022_090654 |
//+------------------------------------------------------------------+
class C201022_090654
  {
protected:
public:
                     C201022_090654(void) {}
                     C201022_090654(C201022_090641&) {}
                     C201022_090654(C201022_092325&) {}
   //---
  };
//+------------------------------------------------------------------+