Set c++ version to c++23
I followed @pennae's advice and moved the constructor definition of
`AttrName` from the header file `nixexpr.hh` to `nixexpr.cc`.
Change-Id: I733f56c25635b366b11ba332ccec38dd7444e793
This commit is contained in:
parent
43e79f4434
commit
4ea8c9d643
|
@ -50,7 +50,7 @@ project('lix', 'cpp', 'rust',
|
||||||
meson_version : '>=1.4.0',
|
meson_version : '>=1.4.0',
|
||||||
version : run_command('bash', '-c', 'echo -n $(jq -r .version < ./version.json)$VERSION_SUFFIX', check : true).stdout().strip(),
|
version : run_command('bash', '-c', 'echo -n $(jq -r .version < ./version.json)$VERSION_SUFFIX', check : true).stdout().strip(),
|
||||||
default_options : [
|
default_options : [
|
||||||
'cpp_std=c++2a',
|
'cpp_std=c++23',
|
||||||
'rust_std=2021',
|
'rust_std=2021',
|
||||||
'warning_level=2',
|
'warning_level=2',
|
||||||
'debug=true',
|
'debug=true',
|
||||||
|
|
|
@ -21,6 +21,14 @@ std::ostream & operator <<(std::ostream & str, const SymbolStr & symbol)
|
||||||
return printIdentifier(str, s);
|
return printIdentifier(str, s);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
AttrName::AttrName(Symbol s) : symbol(s)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
AttrName::AttrName(std::unique_ptr<Expr> e) : expr(std::move(e))
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
void Expr::show(const SymbolTable & symbols, std::ostream & str) const
|
void Expr::show(const SymbolTable & symbols, std::ostream & str) const
|
||||||
{
|
{
|
||||||
abort();
|
abort();
|
||||||
|
|
|
@ -30,8 +30,8 @@ struct AttrName
|
||||||
{
|
{
|
||||||
Symbol symbol;
|
Symbol symbol;
|
||||||
std::unique_ptr<Expr> expr;
|
std::unique_ptr<Expr> expr;
|
||||||
AttrName(Symbol s) : symbol(s) {};
|
AttrName(Symbol s);
|
||||||
AttrName(std::unique_ptr<Expr> e) : expr(std::move(e)) {};
|
AttrName(std::unique_ptr<Expr> e);
|
||||||
};
|
};
|
||||||
|
|
||||||
typedef std::vector<AttrName> AttrPath;
|
typedef std::vector<AttrName> AttrPath;
|
||||||
|
|
Loading…
Reference in a new issue