* fixed types for classrefdef typed constants

git-svn-id: trunk@32471 -
This commit is contained in:
Jonas Maebe 2015-11-22 11:49:36 +00:00
parent 2504a0ce6c
commit 8f57609ef2

View File

@ -744,11 +744,10 @@ function get_next_varsym(def: tabstractrecorddef; const SymList:TFPHashObjectLis
begin
if not def_is_related(tobjectdef(tclassrefdef(node.resultdef).pointeddef),tobjectdef(def.pointeddef)) then
IncompatibleTypes(node.resultdef, def);
{ TODO for correct type? }
ftcb.emit_tai(Tai_const.Create_sym(current_asmdata.RefAsmSymbol(Tobjectdef(tclassrefdef(node.resultdef).pointeddef).vmt_mangledname,AT_DATA)),voidpointertype);
ftcb.emit_tai(Tai_const.Create_sym(current_asmdata.RefAsmSymbol(Tobjectdef(tclassrefdef(node.resultdef).pointeddef).vmt_mangledname,AT_DATA)),def);
end;
niln:
ftcb.emit_tai(Tai_const.Create_sym(nil),voidpointertype);
ftcb.emit_tai(Tai_const.Create_sym(nil),def);
else if is_constnode(node) then
IncompatibleTypes(node.resultdef, def)
else