uhop / node-re2

node.js bindings for RE2: fast, safe alternative to backtracking regular expression engines.
Other
490 stars 53 forks source link

Lots of warnings on installation #1

Closed loveencounterflow closed 8 years ago

loveencounterflow commented 9 years ago

Using nodejs@4.0.0 and npm@3, I get the below output with many, many warnings; while re2 does seem to install, this is at least confusing.

► npm install re2

> re2@1.3.1 install /private/tmp/node_modules/re2
> node-gyp rebuild

  CXX(target) Release/obj.target/re2/lib/addon.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/lib/new.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/lib/exec.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/lib/test.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/lib/match.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/lib/replace.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/lib/search.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/lib/split.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/lib/toString.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/lib/accessors.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/lib/util.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/re2/bitstate.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/re2/compile.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/re2/dfa.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/re2/filtered_re2.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/re2/mimics_pcre.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/re2/nfa.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/re2/onepass.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/re2/parse.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/re2/perl_groups.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
../vendor/re2/re2/perl_groups.cc:22:24: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "\\d", +1, code1, 1 },
                              ^
../vendor/re2/re2/perl_groups.cc:23:24: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "\\D", -1, code1, 1 },
                              ^
../vendor/re2/re2/perl_groups.cc:24:24: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "\\s", +1, code2, 2 },
                              ^
../vendor/re2/re2/perl_groups.cc:25:24: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "\\S", -1, code2, 2 },
                              ^
../vendor/re2/re2/perl_groups.cc:26:24: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "\\w", +1, code3, 4 },
                              ^
../vendor/re2/re2/perl_groups.cc:27:24: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "\\W", -1, code3, 4 },
                              ^
../vendor/re2/re2/perl_groups.cc:87:30: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:alnum:]", +1, code4, 3 },
                                    ^
../vendor/re2/re2/perl_groups.cc:88:31: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:^alnum:]", -1, code4, 3 },
                                     ^
../vendor/re2/re2/perl_groups.cc:89:30: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:alpha:]", +1, code5, 2 },
                                    ^
../vendor/re2/re2/perl_groups.cc:90:31: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:^alpha:]", -1, code5, 2 },
                                     ^
../vendor/re2/re2/perl_groups.cc:91:30: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:ascii:]", +1, code6, 1 },
                                    ^
../vendor/re2/re2/perl_groups.cc:92:31: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:^ascii:]", -1, code6, 1 },
                                     ^
../vendor/re2/re2/perl_groups.cc:93:30: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:blank:]", +1, code7, 2 },
                                    ^
../vendor/re2/re2/perl_groups.cc:94:31: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:^blank:]", -1, code7, 2 },
                                     ^
../vendor/re2/re2/perl_groups.cc:95:30: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:cntrl:]", +1, code8, 2 },
                                    ^
../vendor/re2/re2/perl_groups.cc:96:31: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:^cntrl:]", -1, code8, 2 },
                                     ^
../vendor/re2/re2/perl_groups.cc:97:30: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:digit:]", +1, code9, 1 },
                                    ^
../vendor/re2/re2/perl_groups.cc:98:31: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:^digit:]", -1, code9, 1 },
                                     ^
../vendor/re2/re2/perl_groups.cc:99:31: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:graph:]", +1, code10, 1 },
                                     ^
../vendor/re2/re2/perl_groups.cc:100:32: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:^graph:]", -1, code10, 1 },
                                      ^
../vendor/re2/re2/perl_groups.cc:101:31: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:lower:]", +1, code11, 1 },
                                     ^
../vendor/re2/re2/perl_groups.cc:102:32: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:^lower:]", -1, code11, 1 },
                                      ^
../vendor/re2/re2/perl_groups.cc:103:31: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:print:]", +1, code12, 1 },
                                     ^
../vendor/re2/re2/perl_groups.cc:104:32: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:^print:]", -1, code12, 1 },
                                      ^
../vendor/re2/re2/perl_groups.cc:105:31: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:punct:]", +1, code13, 4 },
                                     ^
../vendor/re2/re2/perl_groups.cc:106:32: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:^punct:]", -1, code13, 4 },
                                      ^
../vendor/re2/re2/perl_groups.cc:107:31: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:space:]", +1, code14, 2 },
                                     ^
../vendor/re2/re2/perl_groups.cc:108:32: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:^space:]", -1, code14, 2 },
                                      ^
../vendor/re2/re2/perl_groups.cc:109:31: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:upper:]", +1, code15, 1 },
                                     ^
../vendor/re2/re2/perl_groups.cc:110:32: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:^upper:]", -1, code15, 1 },
                                      ^
../vendor/re2/re2/perl_groups.cc:111:30: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:word:]", +1, code16, 4 },
                                    ^
../vendor/re2/re2/perl_groups.cc:112:31: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:^word:]", -1, code16, 4 },
                                     ^
../vendor/re2/re2/perl_groups.cc:113:32: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:xdigit:]", +1, code17, 3 },
                                      ^
../vendor/re2/re2/perl_groups.cc:114:33: warning: missing field 'r32' initializer [-Wmissing-field-initializers]
        { "[:^xdigit:]", -1, code17, 3 },
                                       ^
35 warnings generated.
  CXX(target) Release/obj.target/re2/vendor/re2/re2/prefilter.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/re2/prefilter_tree.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/re2/prog.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/re2/re2.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/re2/regexp.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/re2/set.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/re2/simplify.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/re2/tostring.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/re2/unicode_casefold.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/re2/unicode_groups.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/util/arena.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/util/hash.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/util/rune.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/util/stringpiece.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/util/stringprintf.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/util/strutil.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  CXX(target) Release/obj.target/re2/vendor/re2/util/valgrind.o
clang: warning: unknown warning option '-Wunused-local-typedefs'
warning: unknown warning option '-Wunused-local-typedefs' [-Wunknown-warning-option]
1 warning generated.
  SOLINK_MODULE(target) Release/re2.node
npm WARN saveError ENOENT: no such file or directory, open '/private/tmp/package.json'
/private/tmp
└─┬ re2@1.3.1
  └── nan@2.0.9
uhop commented 8 years ago

Different platforms, and compiler versions, produce some warnings, which are harmless. Unfortunately there is no way known to me to suppress them on different platforms. I will gladly accept a patch, if you know how to deal with gyp properly to reduce the clutter. Keeping this ticket open for a pull request.

uhop commented 8 years ago

BTW, some warnings cannot be truly eliminated other than by suppressing them — they are produced by the original RE2 code, which I don't want to touch, or modify in any way. I am more concerned by warnings from my code, which I can and should control (save for V8 and NAN headers).

uhop commented 8 years ago

Closing the issue. Feel free to reopen it with a pull request.