Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx> wrote: > I am in the need for such a context for payload/meta statements. > > meta mark set ip dscp map ... > ^^^^^^^ > > in this case, ip dscp needs to be evaluated as a key for lookups, > shift can probably be removed for implicit maps. > > While in this case: > > meta mark set ip dscp > ^^^^^^^ > > in this case, ip dscp needs the shift. > > Then, there is: > > ip dscp set meta mark > ^^^^^^^ > > (note: this is not yet supported) > > where ip dscp needs to expand to 16-bit because of the kernel > checksum routine requirements. > > They are all payload expressions, but evaluation needs to be slightly > different depending on how the expression is used. > > This context should help disentangle evaluation, evaluation is making > assumption based on subtle hints, I think there is a need for more > explicit hints. Agreed. > We can revisit in a few weeks, otherwise take this. OK, lets keep this back for now; technically I don't need to know the recursion depth, I need to know the placement (lhs / lookup key resp. rhs / element key) to figure out what restrictions apply.