|
@@ -634,7 +634,7 @@ implementation
|
|
|
begin
|
|
|
if tstoredsym(procdefcoll^.data.procsym).is_visible_for_object(pd._class) and
|
|
|
(not(pdoverload or hasoverloads) or
|
|
|
- (compare_paras(procdefcoll^.data.para,pd.para,cp_value_equal_const,false)>=te_equal)) then
|
|
|
+ (compare_paras(procdefcoll^.data.para,pd.para,cp_value_equal_const,false,false)>=te_equal)) then
|
|
|
begin
|
|
|
if is_visible then
|
|
|
procdefcoll^.hidden:=true;
|
|
@@ -652,7 +652,7 @@ implementation
|
|
|
begin
|
|
|
{ we start a new virtual tree, hide the old }
|
|
|
if (not(pdoverload or hasoverloads) or
|
|
|
- (compare_paras(procdefcoll^.data.para,pd.para,cp_value_equal_const,false)>=te_equal)) and
|
|
|
+ (compare_paras(procdefcoll^.data.para,pd.para,cp_value_equal_const,false,false)>=te_equal)) and
|
|
|
(tstoredsym(procdefcoll^.data.procsym).is_visible_for_object(pd._class)) then
|
|
|
begin
|
|
|
if is_visible then
|
|
@@ -668,7 +668,7 @@ implementation
|
|
|
{ do nothing, the error will follow when adding the entry }
|
|
|
end
|
|
|
{ same parameters }
|
|
|
- else if (compare_paras(procdefcoll^.data.para,pd.para,cp_value_equal_const,false)>=te_equal) then
|
|
|
+ else if (compare_paras(procdefcoll^.data.para,pd.para,cp_value_equal_const,false,false)>=te_equal) then
|
|
|
begin
|
|
|
{ overload is inherited }
|
|
|
if (po_overload in procdefcoll^.data.procoptions) then
|
|
@@ -734,7 +734,7 @@ implementation
|
|
|
if the new defintion has not the overload directive }
|
|
|
if is_visible and
|
|
|
((not(pdoverload or hasoverloads)) or
|
|
|
- (compare_paras(procdefcoll^.data.para,pd.para,cp_value_equal_const,false)>=te_equal)) then
|
|
|
+ (compare_paras(procdefcoll^.data.para,pd.para,cp_value_equal_const,false,false)>=te_equal)) then
|
|
|
procdefcoll^.hidden:=true;
|
|
|
end;
|
|
|
end
|
|
@@ -744,7 +744,7 @@ implementation
|
|
|
has not the overload directive }
|
|
|
if is_visible and
|
|
|
((not pdoverload) or
|
|
|
- (compare_paras(procdefcoll^.data.para,pd.para,cp_value_equal_const,false)>=te_equal)) then
|
|
|
+ (compare_paras(procdefcoll^.data.para,pd.para,cp_value_equal_const,false,false)>=te_equal)) then
|
|
|
procdefcoll^.hidden:=true;
|
|
|
end;
|
|
|
end; { not hidden }
|
|
@@ -1046,7 +1046,7 @@ implementation
|
|
|
for i:=1 to sym.procdef_count do
|
|
|
begin
|
|
|
implprocdef:=sym.procdef[i];
|
|
|
- if (compare_paras(proc.para,implprocdef.para,cp_none,false)>=te_equal) and
|
|
|
+ if (compare_paras(proc.para,implprocdef.para,cp_none,false,false)>=te_equal) and
|
|
|
(proc.proccalloption=implprocdef.proccalloption) then
|
|
|
begin
|
|
|
gintfgetcprocdef:=implprocdef;
|
|
@@ -1356,7 +1356,14 @@ initialization
|
|
|
end.
|
|
|
{
|
|
|
$Log$
|
|
|
- Revision 1.50 2003-10-07 20:44:22 peter
|
|
|
+ Revision 1.51 2003-10-07 21:14:32 peter
|
|
|
+ * compare_paras() has a parameter to ignore hidden parameters
|
|
|
+ * cross unit overload searching ignores hidden parameters when
|
|
|
+ comparing parameter lists. Now function(string):string is
|
|
|
+ not overriden with procedure(string) which has the same visible
|
|
|
+ parameter list
|
|
|
+
|
|
|
+ Revision 1.50 2003/10/07 20:44:22 peter
|
|
|
* inherited forced calling convention
|
|
|
* show hints when forward doesn't match
|
|
|
|