Delphi Error – E2236 Constructors and destructors must have %s calling convention

Delphi Compiler Error

E2236 Constructors and destructors must have %s calling convention

Reason for the Error & Solution

An attempt has been made to change the calling convention of a constructor or destructor from the default calling convention.

program Produce;

  type
    TBase = class
      constructor Create; pascal;
    end;

  constructor TBase.Create;
  begin
  end;

begin
end.
	program Solve;

  type
    TBase = class
      constructor Create;
    end;

  constructor TBase.Create;
  begin
  end;

begin
end.

The only viable approach when this error has been issued by the compiler is to remove the offending calling convention directive from the constructor or destructor definition, as has been done in this example.