https://gcc.gnu.org/bugzilla/show_bug.cgi?id=122954

--- Comment #3 from David Binderman <dcb314 at hotmail dot com> ---
(In reply to Jose E. Marchesi from comment #2)
> - I am keeping the code that triggers the knownConditionTrueFalse in the
> mode equivalence code, 

Righto. I don't know the a68 code, I just report problems.

> - I am keeping the code that triggers the performance problem, because the
> ctx argument is conceptually intended to be copied in a stack fashion.  

As long as you don't mind 150+ places in the code where your customers
will be paying a run time cost to maintain the conceptual intention 
and you don't mind ignoring C++ standard practice, then that's fine.

I forgot to mention these 11 other problems:

trunk/gcc/algol68/a68-parser-bottom-up.cc:778:8: style: The scope of the
variable 'a' can be reduced. [variableScope]
trunk/gcc/algol68/a68-parser-bottom-up.cc:806:8: style: The scope of the
variable 'a' can be reduced. [variableScope]
trunk/gcc/algol68/a68-imports.cc:312:9: style: The scope of the variable
'exports' can be reduced. [variableScope]
trunk/gcc/algol68/a68-diagnostics.cc:215:7: style: The scope of the variable
'n' can be reduced. [variableScope]
trunk/gcc/algol68/a68-parser-bottom-up.cc:1749:13: style: The scope of the
variable 'op2' can be reduced. [variableScope]
trunk/gcc/algol68/a68-parser-bottom-up.cc:1731:16: style: The scope of the
variable 'op' can be reduced. [variableScope]
trunk/gcc/algol68/a68-low-units.cc:682:11: style: The scope of the variable
'orig_sliced_multiple_mode' can be reduced. [variableScope]
trunk/gcc/algol68/a68-low.cc:1247:11: style: The scope of the variable
'prelude_enquiry' can be reduced. [variableScope]
trunk/gcc/algol68/a68-parser.cc:1021:17: style: The scope of the variable 's'
can be reduced. [variableScope]
trunk/gcc/algol68/a68-parser-extract.cc:555:9: style: The scope of the variable
'siga' can be reduced. [variableScope]
trunk/gcc/algol68/a68-low-clauses.cc:519:12: style: The scope of the variable
'spec_unit' can be reduced. [variableScope]

I don't think any of the above will result in any customer
visible change of behaviour, it might just make the code
a bit simpler.

There were also 67 cases of this kind of thing:

trunk/gcc/algol68/a68-postulates.cc:80:50: style: Parameter 'a' can be declared
as pointer to const [constParameterPointer]

which might help tighten up some internal interfaces. Again,
the customer probably won't notice.

Thanks for your fast reply.

Reply via email to