title: TVarData Differences between x86 and x64 Delphi
body: <p>I couldn't find any explanation about TVarData in x64. There is a page in Help but it seems TVarData in x64 and TVarData in x86 are different. Actually I'm trying to compile DEHL for x64 target. But it says "Invalid typecast" on this line:(Source is TVarData)</p>
  
  <pre><code>Big := TBigCardinalVarData(Source).BigCardinalPtr^;
  </code></pre>
  
  <p>And TBigCardinalVarData is here:</p>
  
  <pre><code>TBigCardinalVarData = packed record
    VType: TVarType;
    Reserved1, Reserved2, Reserved3: Word;
    BigCardinalPtr: PBigCardinal;
    Reserved4: LongWord;
  end;
  </code></pre>
  
  <p>It compiles in x86, but it refuses to compile in x64. I think the problem is in Word and LongWord variables. But I couldn't figure it yet.</p>