mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-19 23:19:24 +02:00
* only give warnings for uninitialized variables in low()/high()
if the value is calculated at runtime
This commit is contained in:
parent
913efc5b83
commit
2d62e884c8
@ -1715,7 +1715,6 @@ implementation
|
||||
in_low_x,
|
||||
in_high_x:
|
||||
begin
|
||||
set_varstate(left,vs_used,[vsf_must_be_valid]);
|
||||
case left.resulttype.def.deftype of
|
||||
orddef,
|
||||
enumdef:
|
||||
@ -1738,11 +1737,13 @@ implementation
|
||||
if is_open_array(left.resulttype.def) or
|
||||
is_array_of_const(left.resulttype.def) then
|
||||
begin
|
||||
set_varstate(left,vs_used,[vsf_must_be_valid]);
|
||||
result:=load_high_value_node(tparavarsym(tloadnode(left).symtableentry));
|
||||
end
|
||||
else
|
||||
if is_dynamic_array(left.resulttype.def) then
|
||||
begin
|
||||
set_varstate(left,vs_used,[vsf_must_be_valid]);
|
||||
{ can't use inserttypeconv because we need }
|
||||
{ an explicit type conversion (JM) }
|
||||
hp := ccallparanode.create(ctypeconvnode.create_internal(left,voidpointertype),nil);
|
||||
@ -1767,9 +1768,12 @@ implementation
|
||||
else
|
||||
begin
|
||||
if is_open_string(left.resulttype.def) then
|
||||
result:=load_high_value_node(tparavarsym(tloadnode(left).symtableentry))
|
||||
begin
|
||||
set_varstate(left,vs_used,[vsf_must_be_valid]);
|
||||
result:=load_high_value_node(tparavarsym(tloadnode(left).symtableentry))
|
||||
end
|
||||
else
|
||||
result:=cordconstnode.create(tstringdef(left.resulttype.def).len,u8inttype,true);
|
||||
result:=cordconstnode.create(tstringdef(left.resulttype.def).len,u8inttype,true);
|
||||
end;
|
||||
end;
|
||||
else
|
||||
@ -2479,7 +2483,11 @@ begin
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.163 2005-03-25 22:20:19 peter
|
||||
Revision 1.164 2005-04-15 15:50:18 peter
|
||||
* only give warnings for uninitialized variables in low()/high()
|
||||
if the value is calculated at runtime
|
||||
|
||||
Revision 1.163 2005/03/25 22:20:19 peter
|
||||
* add hint when passing an uninitialized variable to a var parameter
|
||||
|
||||
Revision 1.162 2005/03/25 21:46:06 jonas
|
||||
|
Loading…
Reference in New Issue
Block a user