Opened 16 months ago
Closed 16 months ago
#67792 closed defect (fixed)
re2c @3.1: requires C++11
Reported by: | barracuda156 | Owned by: | ryandesign (Ryan Carsten Schmidt) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.8.1 |
Keywords: | Cc: | ||
Port: | re2c |
Description
/usr/bin/g++-4.2 -DHAVE_CONFIG_H -I. -I/opt/local/include -W -Wall -Wextra -Weffc++ -pedantic -Wformat=2 -Wredundant-decls -Wconversion -Wold-style-cast -Werror=return-type -O2 -DRE2C_STDLIB_DIR='"/opt/local/share/re2c/stdlib/"' -DRE2C_LANG=Lang::GO -pipe -Os -arch ppc -MT src/codegen/re2go-helpers.o -MD -MP -MF src/codegen/.deps/re2go-helpers.Tpo -c -o src/codegen/re2go-helpers.o `test -f 'src/codegen/helpers.cc' || echo './'`src/codegen/helpers.cc /usr/bin/g++-4.2 -DHAVE_CONFIG_H -I. -I/opt/local/include -W -Wall -Wextra -Weffc++ -pedantic -Wformat=2 -Wredundant-decls -Wconversion -Wold-style-cast -Werror=return-type -O2 -DRE2C_STDLIB_DIR='"/opt/local/share/re2c/stdlib/"' -DRE2C_LANG=Lang::GO -pipe -Os -arch ppc -MT src/codegen/re2go-output.o -MD -MP -MF src/codegen/.deps/re2go-output.Tpo -c -o src/codegen/re2go-output.o `test -f 'src/codegen/output.cc' || echo './'`src/codegen/output.cc ../src/msg/ver_to_vernum.re:11: warning: expected [error|warning|ignored] after ‘#pragma GCC diagnostic’ ../src/msg/ver_to_vernum.re:12: warning: unknown option after ‘#pragma GCC diagnostic’ kind ../src/msg/ver_to_vernum.re: In function ‘std::string re2c::ver_to_vernum(const char*)’: ../src/msg/ver_to_vernum.re:29: error: ‘constexpr’ does not name a type ../src/msg/ver_to_vernum.re:30: error: ‘SIZE’ was not declared in this scope ../src/msg/ver_to_vernum.re:33: error: ‘PARTS’ was not declared in this scope ../src/msg/ver_to_vernum.re:34: error: ‘buffer’ was not declared in this scope ../src/msg/ver_to_vernum.re:42: error: ‘buffer’ was not declared in this scope ../src/msg/ver_to_vernum.re: At global scope: ../src/msg/ver_to_vernum.re:50: warning: expected [error|warning|ignored] after ‘#pragma GCC diagnostic’ make[2]: *** [src/msg/ver_to_vernum.o] Error 1 make[2]: *** Waiting for unfinished jobs.... In file included from ../src/parse/lex_conf.re:4: ./src/encoding/enc.h:29: error: expected identifier before ‘class’ ./src/encoding/enc.h:29: error: expected class-name before ‘{’ token ./src/encoding/enc.h:32: error: ISO C++ forbids declaration of ‘ASCII’ with no type ./src/encoding/enc.h:33: error: ISO C++ forbids declaration of ‘EBCDIC’ with no type ./src/encoding/enc.h:34: error: ISO C++ forbids declaration of ‘UCS2’ with no type ./src/encoding/enc.h:35: error: ISO C++ forbids declaration of ‘UTF16’ with no type ./src/encoding/enc.h:36: error: ISO C++ forbids declaration of ‘UTF32’ with no type ./src/encoding/enc.h:37: error: ISO C++ forbids declaration of ‘UTF8’ with no type ./src/encoding/enc.h:38: error: expected ‘;’ before ‘}’ token ./src/encoding/enc.h:38: error: expected `;' before ‘}’ token ./src/encoding/enc.h:38: error: multiple types in one declaration ./src/encoding/enc.h:41: error: expected identifier before ‘class’ ./src/encoding/enc.h:41: error: expected class-name before ‘{’ token ./src/encoding/enc.h:42: error: ISO C++ forbids declaration of ‘FAIL’ with no type ./src/encoding/enc.h:43: error: ISO C++ forbids declaration of ‘SUBSTITUTE’ with no type ./src/encoding/enc.h:44: error: ISO C++ forbids declaration of ‘IGNORE’ with no type ./src/encoding/enc.h:45: error: expected ‘;’ before ‘}’ token ./src/encoding/enc.h:45: error: expected `;' before ‘}’ token ./src/encoding/enc.h:45: error: multiple types in one declaration ./src/encoding/enc.h:48: error: ‘constexpr’ does not name a type ./src/encoding/enc.h:49: error: ‘constexpr’ does not name a type ./src/encoding/enc.h:50: error: ‘constexpr’ does not name a type ./src/encoding/enc.h: In constructor ‘re2c::Enc::Enc()’: ./src/encoding/enc.h:32: error: ‘int re2c::Enc::Type::ASCII’ is private ./src/encoding/enc.h:56: error: within this context ./src/encoding/enc.h:32: error: object missing in reference to ‘re2c::Enc::Type::ASCII’ ./src/encoding/enc.h:56: error: from this location ./src/encoding/enc.h:56: error: ‘IGNORE’ is not a member of ‘re2c::Enc::Policy’ ./src/encoding/enc.h: In member function ‘bool re2c::Enc::operator!=(const re2c::Enc&) const’: ./src/encoding/enc.h:57: error: no match for ‘operator!=’ in ‘((const re2c::Enc*)this)->re2c::Enc::type_ != e->re2c::Enc::type_’ ./src/encoding/enc.h: In member function ‘void re2c::Enc::unset(re2c::Enc::Type)’: ./src/encoding/enc.h:59: error: no match for ‘operator==’ in ‘((re2c::Enc*)this)->re2c::Enc::type_ == t’ ./src/encoding/enc.h:32: error: ‘int re2c::Enc::Type::ASCII’ is private ./src/encoding/enc.h:59: error: within this context ./src/encoding/enc.h:32: error: object missing in reference to ‘re2c::Enc::Type::ASCII’ ./src/encoding/enc.h:59: error: from this location ./src/encoding/enc.h: In static member function ‘static const char* re2c::Enc::name(re2c::Enc::Type)’: ./src/encoding/enc.h:77: error: switch quantity not an integer ./src/encoding/enc.h:32: error: ‘int re2c::Enc::Type::ASCII’ is private ./src/encoding/enc.h:78: error: within this context ./src/encoding/enc.h:78: error: ‘re2c::Enc::Type::ASCII’ cannot appear in a constant-expression ./src/encoding/enc.h:33: error: ‘int re2c::Enc::Type::EBCDIC’ is private ./src/encoding/enc.h:80: error: within this context ./src/encoding/enc.h:80: error: ‘re2c::Enc::Type::EBCDIC’ cannot appear in a constant-expression ./src/encoding/enc.h:82: error: ‘UTF8’ is not a member of ‘re2c::Enc::Type’ ./src/encoding/enc.h:34: error: ‘int re2c::Enc::Type::UCS2’ is private ./src/encoding/enc.h:84: error: within this context ./src/encoding/enc.h:84: error: ‘re2c::Enc::Type::UCS2’ cannot appear in a constant-expression ./src/encoding/enc.h:35: error: ‘int re2c::Enc::Type::UTF16’ is private ./src/encoding/enc.h:86: error: within this context ./src/encoding/enc.h:86: error: ‘re2c::Enc::Type::UTF16’ cannot appear in a constant-expression ./src/encoding/enc.h:36: error: ‘int re2c::Enc::Type::UTF32’ is private ./src/encoding/enc.h:88: error: within this context ./src/encoding/enc.h:88: error: ‘re2c::Enc::Type::UTF32’ cannot appear in a constant-expression ./src/encoding/enc.h: In member function ‘uint32_t re2c::Enc::cpoint_count() const’: ./src/encoding/enc.h:95: error: switch quantity not an integer ./src/encoding/enc.h:32: error: ‘int re2c::Enc::Type::ASCII’ is private ./src/encoding/enc.h:96: error: within this context ./src/encoding/enc.h:96: error: ‘re2c::Enc::Type::ASCII’ cannot appear in a constant-expression ./src/encoding/enc.h:33: error: ‘int re2c::Enc::Type::EBCDIC’ is private ./src/encoding/enc.h:97: error: within this context ./src/encoding/enc.h:97: error: ‘re2c::Enc::Type::EBCDIC’ cannot appear in a constant-expression ./src/encoding/enc.h:34: error: ‘int re2c::Enc::Type::UCS2’ is private ./src/encoding/enc.h:99: error: within this context ./src/encoding/enc.h:99: error: ‘re2c::Enc::Type::UCS2’ cannot appear in a constant-expression ./src/encoding/enc.h:35: error: ‘int re2c::Enc::Type::UTF16’ is private ./src/encoding/enc.h:101: error: within this context ./src/encoding/enc.h:101: error: ‘re2c::Enc::Type::UTF16’ cannot appear in a constant-expression ./src/encoding/enc.h:36: error: ‘int re2c::Enc::Type::UTF32’ is private ./src/encoding/enc.h:102: error: within this context ./src/encoding/enc.h:102: error: ‘re2c::Enc::Type::UTF32’ cannot appear in a constant-expression ./src/encoding/enc.h:103: error: ‘UTF8’ is not a member of ‘re2c::Enc::Type’ ./src/encoding/enc.h: In member function ‘uint32_t re2c::Enc::cunit_count() const’: ./src/encoding/enc.h:110: error: switch quantity not an integer ./src/encoding/enc.h:32: error: ‘int re2c::Enc::Type::ASCII’ is private ./src/encoding/enc.h:111: error: within this context ./src/encoding/enc.h:111: error: ‘re2c::Enc::Type::ASCII’ cannot appear in a constant-expression ./src/encoding/enc.h:33: error: ‘int re2c::Enc::Type::EBCDIC’ is private ./src/encoding/enc.h:112: error: within this context ./src/encoding/enc.h:112: error: ‘re2c::Enc::Type::EBCDIC’ cannot appear in a constant-expression ./src/encoding/enc.h:113: error: ‘UTF8’ is not a member of ‘re2c::Enc::Type’ ./src/encoding/enc.h:34: error: ‘int re2c::Enc::Type::UCS2’ is private ./src/encoding/enc.h:115: error: within this context ./src/encoding/enc.h:115: error: ‘re2c::Enc::Type::UCS2’ cannot appear in a constant-expression ./src/encoding/enc.h:35: error: ‘int re2c::Enc::Type::UTF16’ is private ./src/encoding/enc.h:116: error: within this context ./src/encoding/enc.h:116: error: ‘re2c::Enc::Type::UTF16’ cannot appear in a constant-expression ./src/encoding/enc.h:36: error: ‘int re2c::Enc::Type::UTF32’ is private ./src/encoding/enc.h:118: error: within this context ./src/encoding/enc.h:118: error: ‘re2c::Enc::Type::UTF32’ cannot appear in a constant-expression ./src/encoding/enc.h: In member function ‘uint32_t re2c::Enc::cunit_size() const’: ./src/encoding/enc.h:125: error: switch quantity not an integer ./src/encoding/enc.h:32: error: ‘int re2c::Enc::Type::ASCII’ is private ./src/encoding/enc.h:126: error: within this context ./src/encoding/enc.h:126: error: ‘re2c::Enc::Type::ASCII’ cannot appear in a constant-expression ./src/encoding/enc.h:33: error: ‘int re2c::Enc::Type::EBCDIC’ is private ./src/encoding/enc.h:127: error: within this context In file included from ./src/dfa/dfa.h:9, from ../src/options/parse_opts.re:6: ./src/constants.h:9: error: expected identifier before ‘class’ ./src/constants.h:9: error: expected class-name before ‘{’ token ./src/constants.h:10: error: ISO C++ forbids declaration of ‘CODE’ with no type ./src/constants.h:11: error: ISO C++ forbids declaration of ‘DOT’ with no type ./src/constants.h:12: error: ISO C++ forbids declaration of ‘SKELETON’ with no type ./src/constants.h:13: error: expected ‘;’ before ‘}’ token ./src/constants.h:13: error: expected `;' before ‘}’ token ./src/constants.h:13: error: multiple types in one declaration ./src/constants.h:15: error: expected identifier before ‘class’ ./src/constants.h:15: error: expected class-name before ‘{’ token ./src/constants.h:16: error: ISO C++ forbids declaration of ‘C’ with no type ./src/constants.h:17: error: ISO C++ forbids declaration of ‘GO’ with no type ./src/constants.h:18: error: ISO C++ forbids declaration of ‘RUST’ with no type ./src/constants.h:19: error: expected ‘;’ before ‘}’ token ./src/constants.h:19: error: expected `;' before ‘}’ token ./src/constants.h:19: error: multiple types in one declaration ./src/constants.h:21: error: expected identifier before ‘class’ ./src/constants.h:21: error: expected class-name before ‘{’ token ./src/constants.h:22: error: ISO C++ forbids declaration of ‘DEFAULT’ with no type ./src/constants.h:23: error: ISO C++ forbids declaration of ‘CUSTOM’ with no type ./src/constants.h:24: error: expected ‘;’ before ‘}’ token ./src/constants.h:24: error: expected `;' before ‘}’ token ./src/constants.h:24: error: multiple types in one declaration ./src/constants.h:26: error: expected identifier before ‘class’ ./src/constants.h:26: error: expected class-name before ‘{’ token ./src/constants.h:27: error: ISO C++ forbids declaration of ‘FUNCTIONS’ with no type ./src/constants.h:28: error: ISO C++ forbids declaration of ‘FREEFORM’ with no type ./src/constants.h:29: error: expected ‘;’ before ‘}’ token ./src/constants.h:29: error: expected `;' before ‘}’ token ./src/constants.h:29: error: multiple types in one declaration ./src/constants.h:31: error: expected identifier before ‘class’ ./src/constants.h:31: error: expected class-name before ‘{’ token ./src/constants.h:32: error: ISO C++ forbids declaration of ‘NONE’ with no type ./src/constants.h:33: error: ISO C++ forbids declaration of ‘TOPLEVEL’ with no type ./src/constants.h:34: error: ISO C++ forbids declaration of ‘ALL’ with no type ./src/constants.h:35: error: expected ‘;’ before ‘}’ token ./src/constants.h:35: error: expected `;' before ‘}’ token ./src/constants.h:35: error: multiple types in one declaration ./src/constants.h:37: error: expected identifier before ‘class’ ./src/constants.h:37: error: expected class-name before ‘{’ token ./src/constants.h:38: error: ISO C++ forbids declaration of ‘END’ with no type ./src/constants.h:39: error: ISO C++ forbids declaration of ‘GLOBAL’ with no type ./src/constants.h:40: error: ISO C++ forbids declaration of ‘LOCAL’ with no type ./src/constants.h:41: error: ISO C++ forbids declaration of ‘USE’ with no type ./src/constants.h:42: error: ISO C++ forbids declaration of ‘RULES’ with no type ./src/constants.h:43: error: expected ‘;’ before ‘}’ token ./src/constants.h:43: error: expected `;' before ‘}’ token ./src/constants.h:43: error: multiple types in one declaration ./src/constants.h:45: error: expected identifier before ‘class’ ./src/constants.h:45: error: expected class-name before ‘{’ token ./src/constants.h:46: error: ISO C++ forbids declaration of ‘MATCH_EMPTY’ with no type ./src/constants.h:47: error: ISO C++ forbids declaration of ‘MATCH_NONE’ with no type ./src/constants.h:48: error: ISO C++ forbids declaration of ‘ERROR’ with no type ./src/constants.h:49: error: expected ‘;’ before ‘}’ token ./src/constants.h:49: error: expected `;' before ‘}’ token ./src/constants.h:49: error: multiple types in one declaration ./src/constants.h:51: error: expected identifier before ‘class’ ./src/constants.h:51: error: expected class-name before ‘{’ token ./src/constants.h:52: error: ISO C++ forbids declaration of ‘TABLE’ with no type ./src/constants.h:53: error: ISO C++ forbids declaration of ‘MOORE’ with no type ./src/constants.h:54: error: expected ‘;’ before ‘}’ token ./src/constants.h:54: error: expected `;' before ‘}’ token ./src/constants.h:54: error: multiple types in one declaration ./src/constants.h:58: error: use of enum ‘CaptureMode’ without previous declaration ./src/constants.h:58: error: expected unqualified-id before ‘:’ token ./src/constants.h:67: error: expected identifier before ‘class’ ./src/constants.h:67: error: expected class-name before ‘{’ token ./src/constants.h:68: error: ISO C++ forbids declaration of ‘NAIVE’ with no type ./src/constants.h:69: error: ISO C++ forbids declaration of ‘COMPLEX’ with no type ./src/constants.h:70: error: expected ‘;’ before ‘}’ token ./src/constants.h:70: error: expected `;' before ‘}’ token ./src/constants.h:70: error: multiple types in one declaration ./src/constants.h:73: error: expected identifier before ‘class’ ./src/constants.h:73: error: expected class-name before ‘{’ token ./src/constants.h:74: error: ISO C++ forbids declaration of ‘EMPTY’ with no type ./src/constants.h:75: error: ISO C++ forbids declaration of ‘IF_THEN_ELSE’ with no type ./src/constants.h:76: error: ISO C++ forbids declaration of ‘SWITCH’ with no type . . .
re2c
3.0 has built fine, apparently.
Change History (2)
comment:1 Changed 16 months ago by ryandesign (Ryan Carsten Schmidt)
Keywords: | powerpc leopard snowleopard removed |
---|---|
Status: | assigned → accepted |
Summary: | re2c @3.1 is now badly broken on older systems → re2c @3.1: requires C++11 |
comment:2 Changed 16 months ago by ryandesign (Ryan Carsten Schmidt)
Resolution: | → fixed |
---|---|
Status: | accepted → closed |
Note: See
TracTickets for help on using
tickets.
Replying to barracuda156:
re2c has moved to C++11 with version 3.1.
constexpr
is a C++11 thing. The port needscompiler.cxx_standard 2011
added.