Closed aatomium closed 2 years ago
Unfortunately, g++ is not supported - could you try compiling with clang++ instead?
Yup, I have :
`$ clang++ calcgen_test.cpp
In file included from calc__gen_test.cpp:1:
In file included from ./calcgen.hpp:3:
In file included from /usr/local/include/langcc_rt.hpp:3:
/usr/local/include/langcc_util.hpp:1389:20: error: use of class template '_T' requires template arguments
return Option::_T(Option::_W::Some, t);
^
/usr/local/include/langcc_util.hpp:174:33: note: template is declared here
template
/usr/local/include/langcc_util.hpp:3534:10: error: no member named 'filesystem' in namespace 'std'
std::filesystem::create_directories(path);
~~~~~^
/usr/local/include/langcc_util.hpp:3575:14: error: no matching function for call to 'mkstemps'
i32 fd = mkstemps(filename.data(), suffix.length());
^~~~~~~~
/usr/include/stdlib.h:710:12: note: candidate function not viable: 1st argument ('const char *') would lose const qualifier
extern int mkstemps (char *__template, int __suffixlen) __nonnull ((1)) __wur;
^
In file included from calc__gen_test.cpp:1:
In file included from ./calc__gen.hpp:3:
In file included from /usr/local/include/langcc_rt.hpp:3:
/usr/local/include/langcc_util.hpp:3739:14: error: no member named 'filesystem' in namespace 'std'
std::filesystem::remove(test.stdout_filename_);
~~~~~^
/usr/local/include/langcc_util.hpp:3740:14: error: no member named 'filesystem' in namespace 'std'
std::filesystem::remove(test.stderr_filename_);
~~~~~^
/usr/local/include/langcc_util.hpp:3861:14: error: no member named 'filesystem' in namespace 'std'
std::filesystem::remove(stdin_filename);
~~~~~^
/usr/local/include/langcc_util.hpp:3862:14: error: no member named 'filesystem' in namespace 'std'
std::filesystem::remove(stdout_filename);
~~~~~^
/usr/local/include/langcc_util.hpp:3863:14: error: no member named 'filesystem' in namespace 'std'
std::filesystem::remove(stderr_filename);
~~~~~^
/usr/local/include/langcc_util.hpp:3898:23: error: no member named 'filesystem' in namespace 'std'
string cwd = std::filesystem::current_path().string();
~~~~~^
In file included from calc__gen_test.cpp:1:
./calc__gen.hpp:5:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::lexer {
^~~~~~~~~~~~~
{ namespace calc { namespace lexer
./calc__gen.hpp:11:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::lexer::body {
^~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace lexer { namespace body
./calc__gen.hpp:21:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::lexer::comment_single {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace lexer { namespace comment_single
./calc__gen.hpp:35:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Stmt::Assign {
^~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Stmt { namespace Assign
./calc__gen.hpp:39:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Stmt {
^~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Stmt
./calc__gen.hpp:43:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Stmt::Expr {
^~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Stmt { namespace Expr
./calc__gen.hpp:47:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Stmt {
^~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Stmt
./calc__gen.hpp:51:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::Id {
^~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace Id
./calc__gen.hpp:55:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr {
^~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr
./calc__gen.hpp:59:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::Lit::Int_ {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace Lit { namespace Int_
./calc__gen.hpp:63:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::Lit {
^~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace Lit
./calc__gen.hpp:67:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::UnaryPre::op::Neg {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace UnaryPre { namespace op { namespace Neg
./calc__gen.hpp:71:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::UnaryPre::op {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace UnaryPre { namespace op
./calc__gen.hpp:75:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::UnaryPre::op {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace UnaryPre { namespace op
./calc__gen.hpp:79:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::UnaryPre {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace UnaryPre
./calc__gen.hpp:83:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::UnaryPre {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace UnaryPre
./calc__gen.hpp:87:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr {
^~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr
./calc__gen.hpp:91:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp1::op::Add {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp1 { namespace op { namespace Add
./calc__gen.hpp:95:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp1::op {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp1 { namespace op
./calc__gen.hpp:99:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp1::op::Sub {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp1 { namespace op { namespace Sub
./calc__gen.hpp:103:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp1::op {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp1 { namespace op
./calc__gen.hpp:107:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp1::op {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp1 { namespace op
./calc__gen.hpp:111:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp1 {
^~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp1
./calc__gen.hpp:115:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp1 {
^~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp1
./calc__gen.hpp:119:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr {
^~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr
./calc__gen.hpp:123:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp2::op::Mul {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp2 { namespace op { namespace Mul
./calc__gen.hpp:127:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp2::op {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp2 { namespace op
./calc__gen.hpp:131:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp2::op::Div {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp2 { namespace op { namespace Div
./calc__gen.hpp:135:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp2::op {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp2 { namespace op
./calc__gen.hpp:139:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp2::op {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp2 { namespace op
./calc__gen.hpp:143:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp2 {
^~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp2
./calc__gen.hpp:147:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp2 {
^~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp2
./calc__gen.hpp:151:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr {
^~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr
./calc__gen.hpp:155:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp3::op::Pow {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp3 { namespace op { namespace Pow
./calc__gen.hpp:159:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp3::op {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp3 { namespace op
./calc__gen.hpp:163:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp3::op {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp3 { namespace op
./calc__gen.hpp:167:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp3 {
^~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp3
./calc__gen.hpp:171:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp3 {
^~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp3
./calc__gen.hpp:175:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr {
^~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr
./calc__gen.hpp:179:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::Paren {
^~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace Paren
./calc__gen.hpp:183:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr {
^~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr
./calc__gen.hpp:187:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Stmt {
^~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Stmt
./calc__gen.hpp:191:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node {
^~~~~~~~~~~~
{ namespace calc { namespace Node
./calc__gen.hpp:195:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr {
^~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr
./calc__gen.hpp:199:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node {
^~~~~~~~~~~~
{ namespace calc { namespace Node
./calc__gen.hpp:203:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::Lit {
^~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace Lit
./calc__gen.hpp:207:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr {
^~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr
./calc__gen.hpp:211:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node {
^~~~~~~~~~~~
{ namespace calc { namespace Node
./calc__gen.hpp:215:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc {
^~~~~~
{ namespace calc
./calc__gen.hpp:221:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node {
^~~~~~~~~~~~
{ namespace calc { namespace Node
./calc__gen.hpp:232:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node {
^~~~~~~~~~~~
{ namespace calc { namespace Node
./calc__gen.hpp:263:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Stmt {
^~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Stmt
./calc__gen.hpp:270:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Stmt {
^~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Stmt
./calc__gen.hpp:287:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr {
^~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr
./calc__gen.hpp:299:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr {
^~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr
./calc__gen.hpp:326:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Stmt::Assign {
^~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Stmt { namespace Assign
./calc__gen.hpp:330:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Stmt::Assign {
^~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Stmt { namespace Assign
./calc__gen.hpp:334:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Stmt::Assign {
^~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Stmt { namespace Assign
./calc__gen.hpp:355:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Stmt::Expr {
^~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Stmt { namespace Expr
./calc__gen.hpp:359:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Stmt::Expr {
^~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Stmt { namespace Expr
./calc__gen.hpp:363:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Stmt::Expr {
^~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Stmt { namespace Expr
./calc__gen.hpp:382:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::Id {
^~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace Id
./calc__gen.hpp:386:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::Id {
^~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace Id
./calc__gen.hpp:390:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::Id {
^~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace Id
./calc__gen.hpp:409:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::UnaryPre {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace UnaryPre
./calc__gen.hpp:413:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::UnaryPre {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace UnaryPre
./calc__gen.hpp:417:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::UnaryPre {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace UnaryPre
./calc__gen.hpp:438:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp1 {
^~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp1
./calc__gen.hpp:442:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp1 {
^~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp1
./calc__gen.hpp:446:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp1 {
^~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp1
./calc__gen.hpp:469:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp2 {
^~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp2
./calc__gen.hpp:473:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp2 {
^~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp2
./calc__gen.hpp:477:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp2 {
^~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp2
./calc__gen.hpp:500:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp3 {
^~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp3
./calc__gen.hpp:504:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp3 {
^~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp3
./calc__gen.hpp:508:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp3 {
^~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp3
./calc__gen.hpp:531:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::Paren {
^~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace Paren
./calc__gen.hpp:535:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::Paren {
^~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace Paren
./calc__gen.hpp:539:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::Paren {
^~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace Paren
./calc__gen.hpp:558:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::Lit {
^~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace Lit
./calc__gen.hpp:564:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::Lit {
^~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace Lit
./calc__gen.hpp:579:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::Lit::Int_ {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace Lit { namespace Int_
./calc__gen.hpp:583:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::Lit::Int_ {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace Lit { namespace Int_
./calc__gen.hpp:587:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::Lit::Int_ {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace Lit { namespace Int_
./calc__gen.hpp:606:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::UnaryPre::op {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace UnaryPre { namespace op
./calc__gen.hpp:612:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::UnaryPre::op {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace UnaryPre { namespace op
./calc__gen.hpp:627:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp1::op {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp1 { namespace op
./calc__gen.hpp:634:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp1::op {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp1 { namespace op
./calc__gen.hpp:651:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp2::op {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp2 { namespace op
./calc__gen.hpp:658:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp2::op {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp2 { namespace op
./calc__gen.hpp:675:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp3::op {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp3 { namespace op
./calc__gen.hpp:681:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp3::op {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp3 { namespace op
./calc__gen.hpp:696:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::UnaryPre::op::Neg {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace UnaryPre { namespace op { namespace Neg
./calc__gen.hpp:700:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::UnaryPre::op::Neg {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace UnaryPre { namespace op { namespace Neg
./calc__gen.hpp:704:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::UnaryPre::op::Neg {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace UnaryPre { namespace op { namespace Neg
./calc__gen.hpp:721:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp1::op::Add {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp1 { namespace op { namespace Add
./calc__gen.hpp:725:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp1::op::Add {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp1 { namespace op { namespace Add
./calc__gen.hpp:729:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp1::op::Add {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp1 { namespace op { namespace Add
./calc__gen.hpp:746:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp1::op::Sub {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp1 { namespace op { namespace Sub
./calc__gen.hpp:750:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp1::op::Sub {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp1 { namespace op { namespace Sub
./calc__gen.hpp:754:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp1::op::Sub {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp1 { namespace op { namespace Sub
./calc__gen.hpp:771:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp2::op::Mul {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp2 { namespace op { namespace Mul
./calc__gen.hpp:775:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp2::op::Mul {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp2 { namespace op { namespace Mul
./calc__gen.hpp:779:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp2::op::Mul {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp2 { namespace op { namespace Mul
./calc__gen.hpp:796:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp2::op::Div {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp2 { namespace op { namespace Div
./calc__gen.hpp:800:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp2::op::Div {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp2 { namespace op { namespace Div
./calc__gen.hpp:804:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp2::op::Div {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp2 { namespace op { namespace Div
./calc__gen.hpp:821:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp3::op::Pow {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp3 { namespace op { namespace Pow
./calc__gen.hpp:825:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp3::op::Pow {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp3 { namespace op { namespace Pow
./calc__gen.hpp:829:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::Node::Expr::BinOp3::op::Pow {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace Node { namespace Expr { namespace BinOp3 { namespace op { namespace Pow
./calc__gen.hpp:982:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::parser {
^~~~~~~~~~~~~~
{ namespace calc { namespace parser
./calc__gen.hpp:986:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::parser {
^~~~~~~~~~~~~~
{ namespace calc { namespace parser
./calc__gen.hpp:990:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::parser {
^~~~~~~~~~~~~~
{ namespace calc { namespace parser
./calc__gen.hpp:994:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::parser {
^~~~~~~~~~~~~~
{ namespace calc { namespace parser
./calc__gen.hpp:998:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::parser {
^~~~~~~~~~~~~~
{ namespace calc { namespace parser
./calc__gen.hpp:1002:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::parser {
^~~~~~~~~~~~~~
{ namespace calc { namespace parser
./calc__gen.hpp:1006:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::parser {
^~~~~~~~~~~~~~
{ namespace calc { namespace parser
./calc__gen.hpp:1010:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::parser {
^~~~~~~~~~~~~~
{ namespace calc { namespace parser
./calc__gen.hpp:1014:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::parser {
^~~~~~~~~~~~~~
{ namespace calc { namespace parser
./calc__gen.hpp:1018:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc {
^~~~~~
{ namespace calc
./calc__gen.hpp:1022:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc {
^~~~~~
{ namespace calc
./calc__gen.hpp:1026:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc {
^~~~~~
{ namespace calc
./calc__gen.hpp:1030:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc {
^~~~~~
{ namespace calc
./calc__gen.hpp:1034:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc {
^~~~~~
{ namespace calc
./calc__gen.hpp:1038:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::lexer::body {
^~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace lexer { namespace body
./calc__gen.hpp:1042:15: warning: nested namespace definition is a C++17 extension; define each namespace separately [-Wc++17-extensions]
namespace lang::calc::lexer::comment_single {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ namespace calc { namespace lexer { namespace comment_single
126 warnings and 9 errors generated.`
With C++17 :
$ clang++ calc__gen_test.cpp -std=c++17 /usr/bin/ld: /tmp/calc__gen_test-c0e0ec.o: in function
main':
calcgen_test.cpp:(.text+0x20): undefined reference to lang::calc::init()' /usr/bin/ld: /tmp/calc__gen_test-c0e0ec.o: in function
dump_stack()':
calcgen_test.cpp:(.text._Z10dump_stackv[_Z10dump_stackv]+0x13): undefined reference to `_Ux86_64_getcontext'
/usr/bin/ld: calcgen_test.cpp:(.text._Z10dump_stackv[_Z10dump_stackv]+0x2c): undefined reference to `_ULx86_64_init_local'
/usr/bin/ld: calcgen_test.cpp:(.text._Z10dump_stackv[_Z10dump_stackv]+0x56): undefined reference to _ULx86_64_step' /usr/bin/ld: calc__gen_test.cpp:(.text._Z10dump_stackv[_Z10dump_stackv]+0x88): undefined reference to
_ULx86_64_get_reg'
/usr/bin/ld: calcgen_test.cpp:(.text._Z10dump_stackv[_Z10dump_stackv]+0xb1): undefined reference to dladdr' /usr/bin/ld: /tmp/calc__gen_test-c0e0ec.o: in function
lang_rt::LangDesc<lang::calc::Node::_T, &lang::calc::parser::action_by_vertex, &lang::calc::parser::vertex_dfa_step>::test_example(Option::_T<std::cxx11::basic_string<char, std::char_traitslang::calc::parser::action_by_vertex(long, lang_rt::ParserLookahead)' /usr/bin/ld: calc__gen_test.cpp:(.text._ZN7lang_rt8LangDescIN4lang4calc4Node2_TEXadL_ZNS2_6parser16action_by_vertexElNS_15ParserLookaheadEEEXadL_ZNS5_15vertex_dfa_stepEllNS_14ParserAttrMaskEEEE26parse_from_lex_specializedILb1ELb1EEE6rc_ptrINS_11ParseOutputIS4_XadL_ZNS5_16action_by_vertexElS6_EEXadL_ZNS5_15vertex_dfa_stepEllS7_EEEEESA_INS_9LexOutputEEN6Option2_TINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEESA_I6GensymEP5Arena[_ZN7lang_rt8LangDescIN4lang4calc4Node2_TEXadL_ZNS2_6parser16action_by_vertexElNS_15ParserLookaheadEEEXadL_ZNS5_15vertex_dfa_stepEllNS_14ParserAttrMaskEEEE26parse_from_lex_specializedILb1ELb1EEE6rc_ptrINS_11ParseOutputIS4_XadL_ZNS5_16action_by_vertexElS6_EEXadL_ZNS5_15vertex_dfa_stepEllS7_EEEEESA_INS_9LexOutputEEN6Option2_TINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEESA_I6GensymEP5Arena]+0xde4): undefined reference to
lang::calc::parser::vertex_dfa_step(long, long, lang_rt::ParserAttrMask)'
/usr/bin/ld: calcgen_test.cpp:(.text._ZN7lang_rt8LangDescIN4lang4calc4Node2_TEXadL_ZNS2_6parser16action_by_vertexElNS_15ParserLookaheadEEEXadL_ZNS5_15vertex_dfa_stepEllNS_14ParserAttrMaskEEEE26parse_from_lex_specializedILb1ELb1EEE6rc_ptrINS_11ParseOutputIS4_XadL_ZNS5_16action_by_vertexElS6_EEXadL_ZNS5_15vertex_dfa_stepEllS7_EEEEESA_INS_9LexOutputEEN6Option2_TINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEESA_I6GensymEP5Arena[_ZN7lang_rt8LangDescIN4lang4calc4Node2_TEXadL_ZNS2_6parser16action_by_vertexElNS_15ParserLookaheadEEEXadL_ZNS5_15vertex_dfa_stepEllNS_14ParserAttrMaskEEEE26parse_from_lex_specializedILb1ELb1EEE6rc_ptrINS_11ParseOutputIS4_XadL_ZNS5_16action_by_vertexElS6_EEXadL_ZNS5_15vertex_dfa_stepEllS7_EEEEESA_INS_9LexOutputEEN6Option2_TINSt7cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEESA_I6GensymEP5Arena]+0x19cc): undefined reference to lang::calc::parser::vertex_dfa_step(long, long, lang_rt::ParserAttrMask)' /usr/bin/ld: calc__gen_test.cpp:(.text._ZN7lang_rt8LangDescIN4lang4calc4Node2_TEXadL_ZNS2_6parser16action_by_vertexElNS_15ParserLookaheadEEEXadL_ZNS5_15vertex_dfa_stepEllNS_14ParserAttrMaskEEEE26parse_from_lex_specializedILb1ELb1EEE6rc_ptrINS_11ParseOutputIS4_XadL_ZNS5_16action_by_vertexElS6_EEXadL_ZNS5_15vertex_dfa_stepEllS7_EEEEESA_INS_9LexOutputEEN6Option2_TINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEESA_I6GensymEP5Arena[_ZN7lang_rt8LangDescIN4lang4calc4Node2_TEXadL_ZNS2_6parser16action_by_vertexElNS_15ParserLookaheadEEEXadL_ZNS5_15vertex_dfa_stepEllNS_14ParserAttrMaskEEEE26parse_from_lex_specializedILb1ELb1EEE6rc_ptrINS_11ParseOutputIS4_XadL_ZNS5_16action_by_vertexElS6_EEXadL_ZNS5_15vertex_dfa_stepEllS7_EEEEESA_INS_9LexOutputEEN6Option2_TINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEESA_I6GensymEP5Arena]+0x217a): undefined reference to
lang::calc::parser::vertex_dfa_step(long, long, lang_rt::ParserAttrMask)'
/usr/bin/ld: calcgen_test.cpp:(.text._ZN7lang_rt8LangDescIN4lang4calc4Node2_TEXadL_ZNS2_6parser16action_by_vertexElNS_15ParserLookaheadEEEXadL_ZNS5_15vertex_dfa_stepEllNS_14ParserAttrMaskEEEE26parse_from_lex_specializedILb1ELb1EEE6rc_ptrINS_11ParseOutputIS4_XadL_ZNS5_16action_by_vertexElS6_EEXadL_ZNS5_15vertex_dfa_stepEllS7_EEEEESA_INS_9LexOutputEEN6Option2_TINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEESA_I6GensymEP5Arena[_ZN7lang_rt8LangDescIN4lang4calc4Node2_TEXadL_ZNS2_6parser16action_by_vertexElNS_15ParserLookaheadEEEXadL_ZNS5_15vertex_dfa_stepEllNS_14ParserAttrMaskEEEE26parse_from_lex_specializedILb1ELb1EEE6rc_ptrINS_11ParseOutputIS4_XadL_ZNS5_16action_by_vertexElS6_EEXadL_ZNS5_15vertex_dfa_stepEllS7_EEEEESA_INS_9LexOutputEEN6Option2_TINSt7cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEESA_I6GensymEP5Arena]+0x2b6c): undefined reference to lang::calc::parser::vertex_dfa_step(long, long, lang_rt::ParserAttrMask)' /usr/bin/ld: /tmp/calc__gen_test-c0e0ec.o: in function
rc_ptr<lang_rt::ParseOutput<lang::calc::Node::_T, &lang::calc::parser::action_by_vertex, &lang::calc::parser::vertex_dfa_step> > lang_rt::LangDesc<lang::calc::Node::_T, &lang::calc::parser::action_by_vertex, &lang::calc::parser::vertex_dfa_step>::parse_from_lex_specialized<false, false>(rc_ptrlang::calc::parser::vertex_dfa_step(long, long, lang_rt::ParserAttrMask)' clang: error: linker command failed with exit code 1 (use -v to see invocation)
Okay it's good with make
I am trying to compile generated C++ file with g++ calc__gen_test.cpp but I have 'error: ‘std::filesystem’ has not been declared'.
I saw on the web that compile with -lstdc++fs -std=c++17 might be an issue, it works but now I have another error :
calc__gen.hpp:987:60: error: inlining failed in call to always_inline ‘lang_rt::ParserVertexId lang::calc::parser::vertex_dfa_step(lang_rt::ParserVertexId, lang_rt::ParserSymId, lang_rt::ParserAttrMask)’: function body not available 987 | attribute((always_inline)) lang_rt::ParserVertexId vertex_dfa_step(lang_rt::ParserVertexId v, lang_rt::ParserSymId sym, lang_rt::ParserAttrMask attr);