mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-18 13:29:19 +02:00
* vo_is_result flag added for the special RESULT symbol
This commit is contained in:
parent
5541dc331f
commit
fe96aad6d6
@ -162,6 +162,7 @@ implementation
|
|||||||
begin
|
begin
|
||||||
vs:=tabsolutesym.create_ref('RESULT',pd.rettype,tstoredsym(pd.funcretsym));
|
vs:=tabsolutesym.create_ref('RESULT',pd.rettype,tstoredsym(pd.funcretsym));
|
||||||
include(vs.varoptions,vo_is_funcret);
|
include(vs.varoptions,vo_is_funcret);
|
||||||
|
include(vs.varoptions,vo_is_result);
|
||||||
pd.localst.insert(vs);
|
pd.localst.insert(vs);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -2177,7 +2178,10 @@ const
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.116 2003-04-25 20:59:33 peter
|
Revision 1.117 2003-04-26 00:33:07 peter
|
||||||
|
* vo_is_result flag added for the special RESULT symbol
|
||||||
|
|
||||||
|
Revision 1.116 2003/04/25 20:59:33 peter
|
||||||
* removed funcretn,funcretsym, function result is now in varsym
|
* removed funcretn,funcretsym, function result is now in varsym
|
||||||
and aliases for result and function name are added using absolutesym
|
and aliases for result and function name are added using absolutesym
|
||||||
* vs_hidden parameter for funcret passed in parameter
|
* vs_hidden parameter for funcret passed in parameter
|
||||||
|
@ -1038,7 +1038,8 @@ implementation
|
|||||||
(
|
(
|
||||||
(token=_LKLAMMER) or
|
(token=_LKLAMMER) or
|
||||||
(not(m_fpc in aktmodeswitches) and
|
(not(m_fpc in aktmodeswitches) and
|
||||||
(afterassignment or in_args))
|
(afterassignment or in_args) and
|
||||||
|
not(vo_is_result in tvarsym(srsym).varoptions))
|
||||||
) then
|
) then
|
||||||
begin
|
begin
|
||||||
storesymtablestack:=symtablestack;
|
storesymtablestack:=symtablestack;
|
||||||
@ -2310,7 +2311,10 @@ implementation
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.110 2003-04-25 20:59:33 peter
|
Revision 1.111 2003-04-26 00:33:07 peter
|
||||||
|
* vo_is_result flag added for the special RESULT symbol
|
||||||
|
|
||||||
|
Revision 1.110 2003/04/25 20:59:33 peter
|
||||||
* removed funcretn,funcretsym, function result is now in varsym
|
* removed funcretn,funcretsym, function result is now in varsym
|
||||||
and aliases for result and function name are added using absolutesym
|
and aliases for result and function name are added using absolutesym
|
||||||
* vs_hidden parameter for funcret passed in parameter
|
* vs_hidden parameter for funcret passed in parameter
|
||||||
|
@ -251,7 +251,8 @@ type
|
|||||||
vo_is_const, { variable is declared as const (parameter) and can't be written to }
|
vo_is_const, { variable is declared as const (parameter) and can't be written to }
|
||||||
vo_is_exported,
|
vo_is_exported,
|
||||||
vo_is_high_value,
|
vo_is_high_value,
|
||||||
vo_is_funcret
|
vo_is_funcret,
|
||||||
|
vo_is_result { special result variable }
|
||||||
);
|
);
|
||||||
tvaroptions=set of tvaroption;
|
tvaroptions=set of tvaroption;
|
||||||
|
|
||||||
@ -353,7 +354,10 @@ implementation
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.49 2003-04-25 20:59:35 peter
|
Revision 1.50 2003-04-26 00:33:07 peter
|
||||||
|
* vo_is_result flag added for the special RESULT symbol
|
||||||
|
|
||||||
|
Revision 1.49 2003/04/25 20:59:35 peter
|
||||||
* removed funcretn,funcretsym, function result is now in varsym
|
* removed funcretn,funcretsym, function result is now in varsym
|
||||||
and aliases for result and function name are added using absolutesym
|
and aliases for result and function name are added using absolutesym
|
||||||
* vs_hidden parameter for funcret passed in parameter
|
* vs_hidden parameter for funcret passed in parameter
|
||||||
|
@ -564,7 +564,7 @@ implementation
|
|||||||
(hsym.typ=varsym) and
|
(hsym.typ=varsym) and
|
||||||
(vo_is_funcret in tvarsym(hsym).varoptions) and
|
(vo_is_funcret in tvarsym(hsym).varoptions) and
|
||||||
not((m_result in aktmodeswitches) and
|
not((m_result in aktmodeswitches) and
|
||||||
(hsym.name='RESULT')) then
|
(vo_is_result in tvarsym(hsym).varoptions)) then
|
||||||
hsym.owner.rename(hsym.name,'hidden'+hsym.name)
|
hsym.owner.rename(hsym.name,'hidden'+hsym.name)
|
||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
@ -1259,7 +1259,7 @@ implementation
|
|||||||
(sym.typ in [absolutesym,varsym]) and
|
(sym.typ in [absolutesym,varsym]) and
|
||||||
(vo_is_funcret in tvarsym(sym).varoptions) and
|
(vo_is_funcret in tvarsym(sym).varoptions) and
|
||||||
not((m_result in aktmodeswitches) and
|
not((m_result in aktmodeswitches) and
|
||||||
(sym.name='RESULT')) then
|
(vo_is_result in tvarsym(sym).varoptions)) then
|
||||||
sym.owner.rename(sym.name,'hidden'+sym.name)
|
sym.owner.rename(sym.name,'hidden'+sym.name)
|
||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
@ -2437,7 +2437,10 @@ implementation
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.94 2003-04-25 20:59:35 peter
|
Revision 1.95 2003-04-26 00:33:07 peter
|
||||||
|
* vo_is_result flag added for the special RESULT symbol
|
||||||
|
|
||||||
|
Revision 1.94 2003/04/25 20:59:35 peter
|
||||||
* removed funcretn,funcretsym, function result is now in varsym
|
* removed funcretn,funcretsym, function result is now in varsym
|
||||||
and aliases for result and function name are added using absolutesym
|
and aliases for result and function name are added using absolutesym
|
||||||
* vs_hidden parameter for funcret passed in parameter
|
* vs_hidden parameter for funcret passed in parameter
|
||||||
|
Loading…
Reference in New Issue
Block a user