1
0
Fork 0
mirror of https://github.com/NixOS/nix synced 2025-07-04 23:51:47 +02:00

libexpr: always initialize displacement

Otherwise the value is undefined in some cases.
This commit is contained in:
Jörg Thalheim 2024-12-16 11:46:02 +01:00
parent 2baab6412f
commit d8117c8c0d

View file

@ -168,7 +168,7 @@ struct ExprVar : Expr
the set stored in the environment that is `level` levels up the set stored in the environment that is `level` levels up
from the current one.*/ from the current one.*/
Level level; Level level;
Displacement displ; Displacement displ = 0;
ExprVar(Symbol name) : name(name) { }; ExprVar(Symbol name) : name(name) { };
ExprVar(const PosIdx & pos, Symbol name) : pos(pos), name(name) { }; ExprVar(const PosIdx & pos, Symbol name) : pos(pos), name(name) { };
@ -242,7 +242,7 @@ struct ExprAttrs : Expr
Kind kind; Kind kind;
Expr * e; Expr * e;
PosIdx pos; PosIdx pos;
Displacement displ; // displacement Displacement displ = 0; // displacement
AttrDef(Expr * e, const PosIdx & pos, Kind kind = Kind::Plain) AttrDef(Expr * e, const PosIdx & pos, Kind kind = Kind::Plain)
: kind(kind), e(e), pos(pos) { }; : kind(kind), e(e), pos(pos) { };
AttrDef() { }; AttrDef() { };