bison-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH for Dlang support] d: add support for lookahead correction


From: H. S. Teoh
Subject: Re: [PATCH for Dlang support] d: add support for lookahead correction
Date: Wed, 18 Nov 2020 04:44:38 -0800

On Wed, Nov 18, 2020 at 08:46:22AM +0100, Akim Demaille wrote:
> > Le 17 nov. 2020 à 19:09, Adela Vais <adela.vais99@gmail.com> a écrit :
> > 
> > When using lookahead correction, the method
> > YYParser.Context.getExpectedTokens is not annotated with const,
> > because the method calls yylacCheck, which is not const.
> 
> It is logically const though.  It's only because its auxiliary stack
> is stored in the parser to avoid repeated construction/destruction,
> that it needs to "alter the parser".
[[...]

D unfortunately does not have "logical const". It has "physical const"
which is mechanically enforced by the compiler.  Furthermore, const is
"infectious" (transitive): once a reference is marked const, everything
it refers to is also const, as far as can be seen via that reference.  A
const reference can refer to a mutable object, but you cannot modify the
object through that reference, it can only be mutable through a mutable
reference.


T

-- 
If you think you are too small to make a difference, try sleeping in a closed 
room with a mosquito. -- Jan van Steenbergen



reply via email to

[Prev in Thread] Current Thread [Next in Thread]