fix(3p/nix): inherit Expr from gc, make parser state traceable
The parser contained vectors, and the primary parser state, that were not participating in GC tracing. Change-Id: Ie198592cd7acffd390e3e2ae9595138b56416838 Reviewed-on: https://cl.tvl.fyi/c/depot/+/1706 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in> Reviewed-by: glittershark <grfn@gws.fyi>
This commit is contained in:
parent
42bdaacca6
commit
906f5c1d2d
4 changed files with 56 additions and 40 deletions
4
third_party/nix/src/libexpr/parser.hh
vendored
4
third_party/nix/src/libexpr/parser.hh
vendored
|
|
@ -5,6 +5,7 @@
|
|||
#include <optional>
|
||||
#include <variant>
|
||||
|
||||
#include <gc/gc.h>
|
||||
#include <glog/logging.h>
|
||||
|
||||
#include "libexpr/eval.hh"
|
||||
|
|
@ -59,8 +60,7 @@ void addAttr(ExprAttrs* attrs, AttrPath& attrPath, Expr* e, const Pos& pos);
|
|||
|
||||
void addFormal(const Pos& pos, Formals* formals, const Formal& formal);
|
||||
|
||||
Expr* stripIndentation(const Pos& pos, SymbolTable& symbols,
|
||||
std::vector<Expr*>& es);
|
||||
Expr* stripIndentation(const Pos& pos, SymbolTable& symbols, VectorExprs& es);
|
||||
|
||||
Path resolveExprPath(Path path);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue