title: How to call correctly base class constructor from inherited class in Delphi Phrism?
body: <p>I have two classes - base class and inherited class as follows.</p>
  
  <p><strong>Base Class:</strong></p>
  
  <pre><code>TAlarm = class(System.Object)
  private:
  protected:
  public:
      constructor (tag:TTagname);
  end;
  </code></pre>
  
  <p><strong>inherited class:</strong></p>
  
  <pre><code>  TAlarmMsg = class(TAlarm)
    public
      constructor (aname:string);
      method GetAlarmMsg:string; override;
      method SendMsg(msg:string);
    end;
  </code></pre>
  
  <p><strong>constructors:</strong></p>
  
  <pre><code>constructor TAlarm(tag:TTagname);
  begin
    Tagname := tag;
  end;
  
  constructor TAlarmMsg(aname:string);
  begin
    inherited TAlarm(aname); &lt;========Here is my problem.
    name := aname.ToCharArray;
  end;
  </code></pre>
  
  <p>No matter what or how I call or play around with inherited constructor, I keep getting the following error messages when I compile the source file.</p>
  
  <p><strong>- Self cannot be accessed before the inherited constructor has finished. And/OR
   - Cannot find appropriate constructor in base class so manual call to inherited is required</strong></p>
  
  <p>By the way, I have spent good half a day researching on this issue and have found good information online. Nothing helps so far. I even found the webpage that directly talks about constructors on Delphi Prism Wikipedia ( <a href="http://prismwiki.embarcadero.com/en/Constructors" rel="noreferrer">http://prismwiki.embarcadero.com/en/Constructors</a> ).</p>
  
  <p>So, how would you do it correctly? 
  Thanks,</p>