xmppo / node-expat

libexpat XML SAX parser binding for node.js
https://github.com/xmppo/node-expat
MIT License
384 stars 97 forks source link

Build Fails on Ubuntu 18.04 Node 12.3.1 #198

Open pm0u opened 5 years ago

pm0u commented 5 years ago

steps to reproduce:

mkdir test
cd test
nvm use stable
npm init -y
npm install node-expat

Ubuntu 18.04 Node 12.3.1 via nvm

if i nvm use lts/dubnium the install is successful.

here is the console output (verbose):

npm info it worked if it ends with ok
npm verb cli [
npm verb cli   '/home/paul/.nvm/versions/node/v12.3.1/bin/node',
npm verb cli   '/home/paul/.nvm/versions/node/v12.3.1/bin/npm',
npm verb cli   'install',
npm verb cli   'node-expat',
npm verb cli   '--verbose'
npm verb cli ]
npm info using npm@6.9.0
npm info using node@v12.3.1
npm verb npm-session 1bfcc92371e3008a
npm http fetch GET 304 https://registry.npmjs.org/node-expat 152ms (from cache)
npm timing stage:loadCurrentTree Completed in 174ms
npm timing stage:loadIdealTree:cloneCurrentTree Completed in 0ms
npm timing stage:loadIdealTree:loadShrinkwrap Completed in 1ms
npm http fetch GET 304 https://registry.npmjs.org/bindings 41ms (from cache)
npm http fetch GET 304 https://registry.npmjs.org/nan 78ms (from cache)
npm http fetch GET 304 https://registry.npmjs.org/file-uri-to-path 44ms (from cache)
npm timing stage:loadIdealTree:loadAllDepsIntoIdealTree Completed in 139ms
npm timing stage:loadIdealTree Completed in 148ms
npm timing stage:generateActionsToTake Completed in 7ms
npm verb correctMkdir /home/paul/.npm/_locks correctMkdir not in flight; initializing
npm verb lock using /home/paul/.npm/_locks/staging-451c1b4308d888eb.lock for /home/paul/test/node_modules/.staging
npm timing action:extract Completed in 61ms
npm timing action:finalize Completed in 6ms
npm timing action:refresh-package-json Completed in 10ms
npm info lifecycle file-uri-to-path@1.0.0~preinstall: file-uri-to-path@1.0.0
npm info lifecycle bindings@1.5.0~preinstall: bindings@1.5.0
npm info lifecycle nan@2.14.0~preinstall: nan@2.14.0
npm info lifecycle node-expat@2.3.17~preinstall: node-expat@2.3.17
npm timing action:preinstall Completed in 1ms
npm info linkStuff file-uri-to-path@1.0.0
npm info linkStuff bindings@1.5.0
npm info linkStuff nan@2.14.0
npm info linkStuff node-expat@2.3.17
npm timing action:build Completed in 2ms
npm info lifecycle file-uri-to-path@1.0.0~install: file-uri-to-path@1.0.0
npm info lifecycle bindings@1.5.0~install: bindings@1.5.0
npm info lifecycle nan@2.14.0~install: nan@2.14.0
npm info lifecycle node-expat@2.3.17~install: node-expat@2.3.17

> node-expat@2.3.17 install /home/paul/test/node_modules/node-expat
> node-gyp rebuild

gyp info it worked if it ends with ok
gyp verb cli [
gyp verb cli   '/home/paul/.nvm/versions/node/v12.3.1/bin/node',
gyp verb cli   '/home/paul/.nvm/versions/node/v12.3.1/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js',
gyp verb cli   'rebuild'
gyp verb cli ]
gyp info using node-gyp@3.8.0
gyp info using node@12.3.1 | linux | x64
gyp verb command rebuild []
gyp verb command clean []
gyp verb clean removing "build" directory
gyp verb command configure []
gyp verb check python checking for Python executable "python2" in the PATH
gyp verb `which` succeeded python2 /usr/bin/python2
gyp verb check python version `/usr/bin/python2 -c "import sys; print "2.7.15
gyp verb check python version .%s.%s" % sys.version_info[:3];"` returned: %j
gyp verb get node dir no --target version specified, falling back to host node version: 12.3.1
gyp verb command install [ '12.3.1' ]
gyp verb install input version string "12.3.1"
gyp verb install installing version: 12.3.1
gyp verb install --ensure was passed, so won't reinstall if already installed
gyp verb install version is already installed, need to check "installVersion"
gyp verb got "installVersion" 9
gyp verb needs "installVersion" 9
gyp verb install version is good
gyp verb get node dir target node version installed: 12.3.1
gyp verb build dir attempting to create "build" dir: /home/paul/test/node_modules/node-expat/build
gyp verb build dir "build" dir needed to be created? /home/paul/test/node_modules/node-expat/build
gyp verb build/config.gypi creating config file
gyp verb build/config.gypi writing out config file: /home/paul/test/node_modules/node-expat/build/config.gypi
gyp verb config.gypi checking for gypi file: /home/paul/test/node_modules/node-expat/config.gypi
gyp verb common.gypi checking for gypi file: /home/paul/test/node_modules/node-expat/common.gypi
gyp verb gyp gyp format was not specified; forcing "make"
gyp info spawn /usr/bin/python2
gyp info spawn args [
gyp info spawn args   '/home/paul/.nvm/versions/node/v12.3.1/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py',
gyp info spawn args   'binding.gyp',
gyp info spawn args   '-f',
gyp info spawn args   'make',
gyp info spawn args   '-I',
gyp info spawn args   '/home/paul/test/node_modules/node-expat/build/config.gypi',
gyp info spawn args   '-I',
gyp info spawn args   '/home/paul/.nvm/versions/node/v12.3.1/lib/node_modules/npm/node_modules/node-gyp/addon.gypi',
gyp info spawn args   '-I',
gyp info spawn args   '/home/paul/.node-gyp/12.3.1/include/node/common.gypi',
gyp info spawn args   '-Dlibrary=shared_library',
gyp info spawn args   '-Dvisibility=default',
gyp info spawn args   '-Dnode_root_dir=/home/paul/.node-gyp/12.3.1',
gyp info spawn args   '-Dnode_gyp_dir=/home/paul/.nvm/versions/node/v12.3.1/lib/node_modules/npm/node_modules/node-gyp',
gyp info spawn args   '-Dnode_lib_file=/home/paul/.node-gyp/12.3.1/<(target_arch)/node.lib',
gyp info spawn args   '-Dmodule_root_dir=/home/paul/test/node_modules/node-expat',
gyp info spawn args   '-Dnode_engine=v8',
gyp info spawn args   '--depth=.',
gyp info spawn args   '--no-parallel',
gyp info spawn args   '--generator-output',
gyp info spawn args   'build',
gyp info spawn args   '-Goutput_dir=.'
gyp info spawn args ]
gyp verb command build []
gyp verb build type Release
gyp verb architecture x64
gyp verb node dev dir /home/paul/.node-gyp/12.3.1
gyp verb `which` succeeded for `make` /usr/bin/make
gyp info spawn make
gyp info spawn args [ 'V=1', 'BUILDTYPE=Release', '-C', 'build' ]
make: Entering directory '/home/paul/test/node_modules/node-expat/build'
  cc '-DNODE_GYP_MODULE_NAME=expat' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_LARGEFILE_SOURCE' '-D_FILE_OFFSET_BITS=64' '-DOPENSSL_THREADS' '-DPIC' '-DHAVE_EXPAT_CONFIG_H' '-DNDEBUG' -I/home/paul/.node-gyp/12.3.1/include/node -I/home/paul/.node-gyp/12.3.1/src -I/home/paul/.node-gyp/12.3.1/deps/openssl/config -I/home/paul/.node-gyp/12.3.1/deps/openssl/openssl/include -I/home/paul/.node-gyp/12.3.1/deps/uv/include -I/home/paul/.node-gyp/12.3.1/deps/zlib -I/home/paul/.node-gyp/12.3.1/deps/v8/include -I../deps/libexpat -I../deps/libexpat/lib  -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -m64 -Wno-missing-field-initializers -O3 -fno-omit-frame-pointer  -MMD -MF ./Release/.deps/Release/obj.target/expat/deps/libexpat/lib/xmlparse.o.d.raw   -c -o Release/obj.target/expat/deps/libexpat/lib/xmlparse.o ../deps/libexpat/lib/xmlparse.c
../deps/libexpat/lib/xmlparse.c: In function ‘gather_time_entropy’:
../deps/libexpat/lib/xmlparse.c:780:7: warning: variable ‘gettimeofday_res’ set but not used [-Wunused-but-set-variable]
   int gettimeofday_res;
       ^
  cc '-DNODE_GYP_MODULE_NAME=expat' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_LARGEFILE_SOURCE' '-D_FILE_OFFSET_BITS=64' '-DOPENSSL_THREADS' '-DPIC' '-DHAVE_EXPAT_CONFIG_H' '-DNDEBUG' -I/home/paul/.node-gyp/12.3.1/include/node -I/home/paul/.node-gyp/12.3.1/src -I/home/paul/.node-gyp/12.3.1/deps/openssl/config -I/home/paul/.node-gyp/12.3.1/deps/openssl/openssl/include -I/home/paul/.node-gyp/12.3.1/deps/uv/include -I/home/paul/.node-gyp/12.3.1/deps/zlib -I/home/paul/.node-gyp/12.3.1/deps/v8/include -I../deps/libexpat -I../deps/libexpat/lib  -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -m64 -Wno-missing-field-initializers -O3 -fno-omit-frame-pointer  -MMD -MF ./Release/.deps/Release/obj.target/expat/deps/libexpat/lib/xmltok.o.d.raw   -c -o Release/obj.target/expat/deps/libexpat/lib/xmltok.o ../deps/libexpat/lib/xmltok.c
  cc '-DNODE_GYP_MODULE_NAME=expat' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_LARGEFILE_SOURCE' '-D_FILE_OFFSET_BITS=64' '-DOPENSSL_THREADS' '-DPIC' '-DHAVE_EXPAT_CONFIG_H' '-DNDEBUG' -I/home/paul/.node-gyp/12.3.1/include/node -I/home/paul/.node-gyp/12.3.1/src -I/home/paul/.node-gyp/12.3.1/deps/openssl/config -I/home/paul/.node-gyp/12.3.1/deps/openssl/openssl/include -I/home/paul/.node-gyp/12.3.1/deps/uv/include -I/home/paul/.node-gyp/12.3.1/deps/zlib -I/home/paul/.node-gyp/12.3.1/deps/v8/include -I../deps/libexpat -I../deps/libexpat/lib  -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -m64 -Wno-missing-field-initializers -O3 -fno-omit-frame-pointer  -MMD -MF ./Release/.deps/Release/obj.target/expat/deps/libexpat/lib/xmlrole.o.d.raw   -c -o Release/obj.target/expat/deps/libexpat/lib/xmlrole.o ../deps/libexpat/lib/xmlrole.c
  rm -f Release/obj.target/deps/libexpat/libexpat.a && ar crs Release/obj.target/deps/libexpat/libexpat.a Release/obj.target/expat/deps/libexpat/lib/xmlparse.o Release/obj.target/expat/deps/libexpat/lib/xmltok.o Release/obj.target/expat/deps/libexpat/lib/xmlrole.o
  rm -rf "Release/libexpat.a" && cp -af "Release/obj.target/deps/libexpat/libexpat.a" "Release/libexpat.a"
  g++ '-DNODE_GYP_MODULE_NAME=node_expat' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_LARGEFILE_SOURCE' '-D_FILE_OFFSET_BITS=64' '-DOPENSSL_THREADS' '-DBUILDING_NODE_EXTENSION' -I/home/paul/.node-gyp/12.3.1/include/node -I/home/paul/.node-gyp/12.3.1/src -I/home/paul/.node-gyp/12.3.1/deps/openssl/config -I/home/paul/.node-gyp/12.3.1/deps/openssl/openssl/include -I/home/paul/.node-gyp/12.3.1/deps/uv/include -I/home/paul/.node-gyp/12.3.1/deps/zlib -I/home/paul/.node-gyp/12.3.1/deps/v8/include -I../../nan -I../deps/libexpat -I../deps/libexpat/lib  -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -m64 -O3 -fno-omit-frame-pointer -fno-rtti -fno-exceptions -std=gnu++1y -MMD -MF ./Release/.deps/Release/obj.target/node_expat/node-expat.o.d.raw   -c -o Release/obj.target/node_expat/node-expat.o ../node-expat.cc
../node-expat.cc:11:26: error: ‘Handle’ has not been declared
   static void Initialize(Handle<Object> target)
                          ^
../node-expat.cc:11:32: error: expected ‘,’ or ‘...’ before ‘<’ token
   static void Initialize(Handle<Object> target)
                                ^
../node-expat.cc:481:23: error: ‘Handle’ has not been declared
   void Emit(int argc, Handle<Value> argv[])
                       ^
../node-expat.cc:481:29: error: expected ‘,’ or ‘...’ before ‘<’ token
   void Emit(int argc, Handle<Value> argv[])
                             ^
../node-expat.cc: In static member function ‘static void Parser::Initialize(int)’:
../node-expat.cc:29:5: error: ‘target’ was not declared in this scope
     target->Set(Nan::New("Parser").ToLocalChecked(), t->GetFunction());
     ^
../node-expat.cc:29:69: error: no matching function for call to ‘v8::FunctionTemplate::GetFunction()’
     target->Set(Nan::New("Parser").ToLocalChecked(), t->GetFunction());
                                                                     ^
In file included from /home/paul/.node-gyp/12.3.1/include/node/node.h:63:0,
                 from ../../nan/nan.h:54,
                 from ../node-expat.cc:1:
/home/paul/.node-gyp/12.3.1/include/node/v8.h:5947:46: note: candidate: v8::MaybeLocal<v8::Function> v8::FunctionTemplate::GetFunction(v8::Local<v8::Context>)
   V8_WARN_UNUSED_RESULT MaybeLocal<Function> GetFunction(
                                              ^
/home/paul/.node-gyp/12.3.1/include/node/v8.h:5947:46: note:   candidate expects 1 argument, 0 provided
../node-expat.cc: In static member function ‘static Nan::NAN_METHOD_RETURN_TYPE Parser::Parse(Nan::NAN_METHOD_ARGS_TYPE)’:
../node-expat.cc:98:33: error: no matching function for call to ‘v8::Value::ToString()’
         str = info[0]->ToString();
                                 ^
In file included from /home/paul/.node-gyp/12.3.1/include/node/node.h:63:0,
                 from ../../nan/nan.h:54,
                 from ../node-expat.cc:1:
/home/paul/.node-gyp/12.3.1/include/node/v8.h:2528:44: note: candidate: v8::MaybeLocal<v8::String> v8::Value::ToString(v8::Local<v8::Context>) const
   V8_WARN_UNUSED_RESULT MaybeLocal<String> ToString(
                                            ^
/home/paul/.node-gyp/12.3.1/include/node/v8.h:2528:44: note:   candidate expects 1 argument, 0 provided
In file included from /home/paul/.node-gyp/12.3.1/include/node/v8-internal.h:14:0,
                 from /home/paul/.node-gyp/12.3.1/include/node/v8.h:25,
                 from /home/paul/.node-gyp/12.3.1/include/node/node.h:63,
                 from ../../nan/nan.h:54,
                 from ../node-expat.cc:1:
/home/paul/.node-gyp/12.3.1/include/node/v8.h:2544:35: note: candidate: v8::Local<v8::String> v8::Value::ToString(v8::Isolate*) const
                     Local<String> ToString(Isolate* isolate) const);
                                   ^
/home/paul/.node-gyp/12.3.1/include/node/v8config.h:322:3: note: in definition of macro ‘V8_DEPRECATE_SOON’
   declarator __attribute__((deprecated(message)))
   ^
/home/paul/.node-gyp/12.3.1/include/node/v8.h:2544:35: note:   candidate expects 1 argument, 0 provided
                     Local<String> ToString(Isolate* isolate) const);
                                   ^
/home/paul/.node-gyp/12.3.1/include/node/v8config.h:322:3: note: in definition of macro ‘V8_DEPRECATE_SOON’
   declarator __attribute__((deprecated(message)))
   ^
../node-expat.cc:103:47: error: no matching function for call to ‘v8::Value::ToObject()’
         Local<Object> obj = info[0]->ToObject();
                                               ^
In file included from /home/paul/.node-gyp/12.3.1/include/node/node.h:63:0,
                 from ../../nan/nan.h:54,
                 from ../node-expat.cc:1:
/home/paul/.node-gyp/12.3.1/include/node/v8.h:2532:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const
   V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                            ^
/home/paul/.node-gyp/12.3.1/include/node/v8.h:2532:44: note:   candidate expects 1 argument, 0 provided
In file included from /home/paul/.node-gyp/12.3.1/include/node/v8-internal.h:14:0,
                 from /home/paul/.node-gyp/12.3.1/include/node/v8.h:25,
                 from /home/paul/.node-gyp/12.3.1/include/node/node.h:63,
                 from ../../nan/nan.h:54,
                 from ../node-expat.cc:1:
/home/paul/.node-gyp/12.3.1/include/node/v8.h:2546:35: note: candidate: v8::Local<v8::Object> v8::Value::ToObject(v8::Isolate*) const
                     Local<Object> ToObject(Isolate* isolate) const);
                                   ^
/home/paul/.node-gyp/12.3.1/include/node/v8config.h:322:3: note: in definition of macro ‘V8_DEPRECATE_SOON’
   declarator __attribute__((deprecated(message)))
   ^
/home/paul/.node-gyp/12.3.1/include/node/v8.h:2546:35: note:   candidate expects 1 argument, 0 provided
                     Local<Object> ToObject(Isolate* isolate) const);
                                   ^
/home/paul/.node-gyp/12.3.1/include/node/v8config.h:322:3: note: in definition of macro ‘V8_DEPRECATE_SOON’
   declarator __attribute__((deprecated(message)))
   ^
../node-expat.cc: In member function ‘bool Parser::parseString(v8::String&, int)’:
../node-expat.cc:124:30: error: no matching function for call to ‘v8::String::Utf8Length()’
     int len = str.Utf8Length();
                              ^
In file included from /home/paul/.node-gyp/12.3.1/include/node/node.h:63:0,
                 from ../../nan/nan.h:54,
                 from ../node-expat.cc:1:
/home/paul/.node-gyp/12.3.1/include/node/v8.h:2678:7: note: candidate: int v8::String::Utf8Length(v8::Isolate*) const
   int Utf8Length(Isolate* isolate) const;
       ^
/home/paul/.node-gyp/12.3.1/include/node/v8.h:2678:7: note:   candidate expects 1 argument, 0 provided
In file included from /usr/include/c++/5/cassert:43:0,
                 from /home/paul/.node-gyp/12.3.1/include/node/node_object_wrap.h:26,
                 from ../../nan/nan.h:56,
                 from ../node-expat.cc:1:
../node-expat.cc:130:55: error: no matching function for call to ‘v8::String::WriteUtf8(char*, int&)’
     assert(str.WriteUtf8(static_cast<char *>(buf), len) == len);
                                                       ^
In file included from /home/paul/.node-gyp/12.3.1/include/node/node.h:63:0,
                 from ../../nan/nan.h:54,
                 from ../node-expat.cc:1:
/home/paul/.node-gyp/12.3.1/include/node/v8.h:2738:7: note: candidate: int v8::String::WriteUtf8(v8::Isolate*, char*, int, int*, int) const
   int WriteUtf8(Isolate* isolate, char* buffer, int length = -1,
       ^
/home/paul/.node-gyp/12.3.1/include/node/v8.h:2738:7: note:   no known conversion for argument 1 from ‘char*’ to ‘v8::Isolate*’
../node-expat.cc: In static member function ‘static void Parser::StartElement(void*, const XML_Char*, const XML_Char**)’:
../node-expat.cc:301:89: warning: ‘bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
       attr->Set(Nan::New(atts1[0]).ToLocalChecked(), Nan::New(atts1[1]).ToLocalChecked());
                                                                                         ^
In file included from /home/paul/.node-gyp/12.3.1/include/node/v8-internal.h:14:0,
                 from /home/paul/.node-gyp/12.3.1/include/node/v8.h:25,
                 from /home/paul/.node-gyp/12.3.1/include/node/node.h:63,
                 from ../../nan/nan.h:54,
                 from ../node-expat.cc:1:
/home/paul/.node-gyp/12.3.1/include/node/v8.h:3359:26: note: declared here
                     bool Set(Local<Value> key, Local<Value> value));
                          ^
/home/paul/.node-gyp/12.3.1/include/node/v8config.h:322:3: note: in definition of macro ‘V8_DEPRECATE_SOON’
   declarator __attribute__((deprecated(message)))
   ^
../node-expat.cc:304:5: error: ‘Handle’ was not declared in this scope
     Handle<Value> argv[3] = { Nan::New("startElement").ToLocalChecked(),
     ^
../node-expat.cc:304:17: error: expected primary-expression before ‘>’ token
     Handle<Value> argv[3] = { Nan::New("startElement").ToLocalChecked(),
                 ^
../node-expat.cc:304:19: error: ‘argv’ was not declared in this scope
     Handle<Value> argv[3] = { Nan::New("startElement").ToLocalChecked(),
                   ^
../node-expat.cc: In static member function ‘static void Parser::EndElement(void*, const XML_Char*)’:
../node-expat.cc:317:5: error: ‘Handle’ was not declared in this scope
     Handle<Value> argv[2] = { Nan::New("endElement").ToLocalChecked(), Nan::New(name).ToLocalChecked() };
     ^
../node-expat.cc:317:17: error: expected primary-expression before ‘>’ token
     Handle<Value> argv[2] = { Nan::New("endElement").ToLocalChecked(), Nan::New(name).ToLocalChecked() };
                 ^
../node-expat.cc:317:19: error: ‘argv’ was not declared in this scope
     Handle<Value> argv[2] = { Nan::New("endElement").ToLocalChecked(), Nan::New(name).ToLocalChecked() };
                   ^
../node-expat.cc: In static member function ‘static void Parser::StartCdata(void*)’:
../node-expat.cc:327:5: error: ‘Handle’ was not declared in this scope
     Handle<Value> argv[1] = { Nan::New("startCdata").ToLocalChecked() };
     ^
../node-expat.cc:327:17: error: expected primary-expression before ‘>’ token
     Handle<Value> argv[1] = { Nan::New("startCdata").ToLocalChecked() };
                 ^
../node-expat.cc:327:19: error: ‘argv’ was not declared in this scope
     Handle<Value> argv[1] = { Nan::New("startCdata").ToLocalChecked() };
                   ^
../node-expat.cc: In static member function ‘static void Parser::EndCdata(void*)’:
../node-expat.cc:337:5: error: ‘Handle’ was not declared in this scope
     Handle<Value> argv[1] = { Nan::New("endCdata").ToLocalChecked() };
     ^
../node-expat.cc:337:17: error: expected primary-expression before ‘>’ token
     Handle<Value> argv[1] = { Nan::New("endCdata").ToLocalChecked() };
                 ^
../node-expat.cc:337:19: error: ‘argv’ was not declared in this scope
     Handle<Value> argv[1] = { Nan::New("endCdata").ToLocalChecked() };
                   ^
../node-expat.cc: In static member function ‘static void Parser::Text(void*, const XML_Char*, int)’:
../node-expat.cc:348:5: error: ‘Handle’ was not declared in this scope
     Handle<Value> argv[2] = { Nan::New("text").ToLocalChecked(),
     ^
../node-expat.cc:348:17: error: expected primary-expression before ‘>’ token
     Handle<Value> argv[2] = { Nan::New("text").ToLocalChecked(),
                 ^
../node-expat.cc:348:19: error: ‘argv’ was not declared in this scope
     Handle<Value> argv[2] = { Nan::New("text").ToLocalChecked(),
                   ^
../node-expat.cc: In static member function ‘static void Parser::ProcessingInstruction(void*, const XML_Char*, const XML_Char*)’:
../node-expat.cc:360:5: error: ‘Handle’ was not declared in this scope
     Handle<Value> argv[3] = { Nan::New("processingInstruction").ToLocalChecked(),
     ^
../node-expat.cc:360:17: error: expected primary-expression before ‘>’ token
     Handle<Value> argv[3] = { Nan::New("processingInstruction").ToLocalChecked(),
                 ^
../node-expat.cc:360:19: error: ‘argv’ was not declared in this scope
     Handle<Value> argv[3] = { Nan::New("processingInstruction").ToLocalChecked(),
                   ^
../node-expat.cc: In static member function ‘static void Parser::Comment(void*, const XML_Char*)’:
../node-expat.cc:373:5: error: ‘Handle’ was not declared in this scope
     Handle<Value> argv[2] = { Nan::New("comment").ToLocalChecked(), Nan::New(data).ToLocalChecked() };
     ^
../node-expat.cc:373:17: error: expected primary-expression before ‘>’ token
     Handle<Value> argv[2] = { Nan::New("comment").ToLocalChecked(), Nan::New(data).ToLocalChecked() };
                 ^
../node-expat.cc:373:19: error: ‘argv’ was not declared in this scope
     Handle<Value> argv[2] = { Nan::New("comment").ToLocalChecked(), Nan::New(data).ToLocalChecked() };
                   ^
../node-expat.cc: In static member function ‘static void Parser::XmlDecl(void*, const XML_Char*, const XML_Char*, int)’:
../node-expat.cc:395:25: error: invalid conversion from ‘v8::Local<v8::Value>*’ to ‘int’ [-fpermissive]
     parser->Emit(4, argv);
                         ^
../node-expat.cc:481:8: note:   initializing argument 2 of ‘void Parser::Emit(int, int)’
   void Emit(int argc, Handle<Value> argv[])
        ^
../node-expat.cc: In static member function ‘static void Parser::EntityDecl(void*, const XML_Char*, int, const XML_Char*, int, const XML_Char*, const XML_Char*, const XML_Char*, const XML_Char*)’:
../node-expat.cc:424:25: error: invalid conversion from ‘v8::Local<v8::Value>*’ to ‘int’ [-fpermissive]
     parser->Emit(8, argv);
                         ^
../node-expat.cc:481:8: note:   initializing argument 2 of ‘void Parser::Emit(int, int)’
   void Emit(int argc, Handle<Value> argv[])
        ^
../node-expat.cc: In static member function ‘static int Parser::UnknownEncoding(void*, const XML_Char*, XML_Encoding*)’:
../node-expat.cc:442:25: error: invalid conversion from ‘v8::Local<v8::Value>*’ to ‘int’ [-fpermissive]
     parser->Emit(2, argv);
                         ^
../node-expat.cc:481:8: note:   initializing argument 2 of ‘void Parser::Emit(int, int)’
   void Emit(int argc, Handle<Value> argv[])
        ^
../node-expat.cc: In static member function ‘static Nan::NAN_METHOD_RETURN_TYPE Parser::SetUnknownEncoding(Nan::NAN_METHOD_ARGS_TYPE)’:
../node-expat.cc:468:46: warning: ‘v8::Local<v8::Value> v8::Object::Get(v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
         Local<Value> m = map->Get(Nan::New(i));
                                              ^
In file included from /home/paul/.node-gyp/12.3.1/include/node/v8-internal.h:14:0,
                 from /home/paul/.node-gyp/12.3.1/include/node/v8.h:25,
                 from /home/paul/.node-gyp/12.3.1/include/node/node.h:63,
                 from ../../nan/nan.h:54,
                 from ../node-expat.cc:1:
/home/paul/.node-gyp/12.3.1/include/node/v8.h:3412:55: note: declared here
   V8_DEPRECATE_SOON("Use maybe version", Local<Value> Get(Local<Value> key));
                                                       ^
/home/paul/.node-gyp/12.3.1/include/node/v8config.h:322:3: note: in definition of macro ‘V8_DEPRECATE_SOON’
   declarator __attribute__((deprecated(message)))
   ^
../node-expat.cc:470:59: error: no matching function for call to ‘v8::Value::Int32Value()’
           parser->xmlEncodingInfo->map[i] = m->Int32Value();
                                                           ^
In file included from /home/paul/.node-gyp/12.3.1/include/node/node.h:63:0,
                 from ../../nan/nan.h:54,
                 from ../node-expat.cc:1:
/home/paul/.node-gyp/12.3.1/include/node/v8.h:2569:40: note: candidate: v8::Maybe<int> v8::Value::Int32Value(v8::Local<v8::Context>) const
   V8_WARN_UNUSED_RESULT Maybe<int32_t> Int32Value(Local<Context> context) const;
                                        ^
/home/paul/.node-gyp/12.3.1/include/node/v8.h:2569:40: note:   candidate expects 1 argument, 0 provided
../node-expat.cc: In member function ‘void Parser::Emit(int, int)’:
../node-expat.cc:485:5: error: ‘Handle’ was not declared in this scope
     Handle<Object> handle = this->handle();
     ^
../node-expat.cc:485:18: error: expected primary-expression before ‘>’ token
     Handle<Object> handle = this->handle();
                  ^
../node-expat.cc:486:34: error: invalid use of member function (did you forget the ‘()’ ?)
     Local<Function> emit = handle->Get(Nan::New("emit").ToLocalChecked()).As<Function>();
                                  ^
../node-expat.cc:486:34: error: base operand of ‘->’ is not a pointer
../node-expat.cc:486:86: error: expected primary-expression before ‘>’ token
     Local<Function> emit = handle->Get(Nan::New("emit").ToLocalChecked()).As<Function>();
                                                                                      ^
../node-expat.cc:486:88: error: expected primary-expression before ‘)’ token
     Local<Function> emit = handle->Get(Nan::New("emit").ToLocalChecked()).As<Function>();
                                                                                        ^
../node-expat.cc:487:30: error: ‘argv’ was not declared in this scope
     emit->Call(handle, argc, argv);
                              ^
../node-expat.cc:487:34: error: invalid use of non-static member function
     emit->Call(handle, argc, argv);
                                  ^
../node-expat.cc: At global scope:
../node-expat.cc:492:21: error: variable or field ‘init’ declared void
   static void init (Handle<Object> target)
                     ^
../node-expat.cc:492:21: error: ‘Handle’ was not declared in this scope
../node-expat.cc:492:34: error: expected primary-expression before ‘>’ token
   static void init (Handle<Object> target)
                                  ^
../node-expat.cc:492:36: error: ‘target’ was not declared in this scope
   static void init (Handle<Object> target)
                                    ^
In file included from ../../nan/nan.h:54:0,
                 from ../node-expat.cc:1:
../node-expat.cc:497:27: error: ‘init’ was not declared in this scope
   NODE_MODULE(node_expat, init);
                           ^
/home/paul/.node-gyp/12.3.1/include/node/node.h:556:36: note: in definition of macro ‘NODE_MODULE_X’
       (node::addon_register_func) (regfunc),                          \
                                    ^
../node-expat.cc:497:3: note: in expansion of macro ‘NODE_MODULE’
   NODE_MODULE(node_expat, init);
   ^
node_expat.target.mk:114: recipe for target 'Release/obj.target/node_expat/node-expat.o' failed
make: *** [Release/obj.target/node_expat/node-expat.o] Error 1
make: Leaving directory '/home/paul/test/node_modules/node-expat/build'
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/home/paul/.nvm/versions/node/v12.3.1/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:262:23)
gyp ERR! stack     at ChildProcess.emit (events.js:200:13)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)
gyp ERR! System Linux 4.18.0-20-generic
gyp ERR! command "/home/paul/.nvm/versions/node/v12.3.1/bin/node" "/home/paul/.nvm/versions/node/v12.3.1/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/paul/test/node_modules/node-expat
gyp ERR! node -v v12.3.1
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok 
npm verb lifecycle node-expat@2.3.17~install: unsafe-perm in lifecycle true
npm verb lifecycle node-expat@2.3.17~install: PATH: /home/paul/.nvm/versions/node/v12.3.1/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/home/paul/test/node_modules/node-expat/node_modules/.bin:/home/paul/test/node_modules/.bin:/home/paul/.nvm/versions/node/v12.3.1/bin:/home/paul/.config/composer/vendor/bin:/home/paul/bin:/usr/local/bin:/home/paul/.local/bin:/home/paul/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
npm verb lifecycle node-expat@2.3.17~install: CWD: /home/paul/test/node_modules/node-expat
npm timing audit submit Completed in 260ms
npm http fetch POST 200 https://registry.npmjs.org/-/npm/v1/security/audits/quick 260ms
npm timing audit body Completed in 0ms
npm info lifecycle node-expat@2.3.17~install: Failed to exec install script
npm timing action:install Completed in 3611ms
npm verb unlock done using /home/paul/.npm/_locks/staging-451c1b4308d888eb.lock for /home/paul/test/node_modules/.staging
npm timing stage:rollbackFailedOptional Completed in 18ms
npm timing stage:runTopLevelLifecycles Completed in 4061ms
npm WARN test@1.0.0 No description
npm WARN test@1.0.0 No repository field.

npm verb stack Error: node-expat@2.3.17 install: `node-gyp rebuild`
npm verb stack Exit status 1
npm verb stack     at EventEmitter.<anonymous> (/home/paul/.nvm/versions/node/v12.3.1/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:301:16)
npm verb stack     at EventEmitter.emit (events.js:200:13)
npm verb stack     at ChildProcess.<anonymous> (/home/paul/.nvm/versions/node/v12.3.1/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
npm verb stack     at ChildProcess.emit (events.js:200:13)
npm verb stack     at maybeClose (internal/child_process.js:1021:16)
npm verb stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:283:5)
npm verb pkgid node-expat@2.3.17
npm verb cwd /home/paul/test
npm verb Linux 4.18.0-20-generic
npm verb argv "/home/paul/.nvm/versions/node/v12.3.1/bin/node" "/home/paul/.nvm/versions/node/v12.3.1/bin/npm" "install" "node-expat" "--verbose"
npm verb node v12.3.1
npm verb npm  v6.9.0
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! node-expat@2.3.17 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the node-expat@2.3.17 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm verb exit [ 1, true ]
npm timing npm Completed in 4287ms

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/paul/.npm/_logs/2019-05-28T22_30_09_975Z-debug.log
willin commented 5 years ago

node v12.3.1 on osx


npm i node-expat

> node-expat@2.3.17 install /Users/willin/Documents/class-go/classgo-server/node_modules/node-expat
> node-gyp rebuild

  CC(target) Release/obj.target/expat/deps/libexpat/lib/xmlparse.o
  CC(target) Release/obj.target/expat/deps/libexpat/lib/xmltok.o
  CC(target) Release/obj.target/expat/deps/libexpat/lib/xmlrole.o
  LIBTOOL-STATIC Release/libexpat.a
  CXX(target) Release/obj.target/node_expat/node-expat.o
../node-expat.cc:11:26: error: no template named 'Handle'
  static void Initialize(Handle<Object> target)
                         ^
../node-expat.cc:481:23: error: no template named 'Handle'
  void Emit(int argc, Handle<Value> argv[])
                      ^
../node-expat.cc:29:69: error: too few arguments to function call, single
      argument 'context' was not specified
    target->Set(Nan::New("Parser").ToLocalChecked(), t->GetFunction());
                                                     ~~~~~~~~~~~~~~ ^
/Users/willin/.node-gyp/12.3.1/include/node/v8.h:5947:3: note: 'GetFunction'
      declared here
  V8_WARN_UNUSED_RESULT MaybeLocal<Function> GetFunction(
  ^
/Users/willin/.node-gyp/12.3.1/include/node/v8config.h:347:31: note: expanded
      from macro 'V8_WARN_UNUSED_RESULT'
#define V8_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
                              ^
../node-expat.cc:98:24: error: no matching member function for call to
      'ToString'
        str = info[0]->ToString();
              ~~~~~~~~~^~~~~~~~
/Users/willin/.node-gyp/12.3.1/include/node/v8.h:2528:44: note: candidate
      function not viable: requires single argument 'context', but no arguments
      were provided
  V8_WARN_UNUSED_RESULT MaybeLocal<String> ToString(
                                           ^
/Users/willin/.node-gyp/12.3.1/include/node/v8.h:2544:35: note: candidate
      function not viable: requires single argument 'isolate', but no arguments
      were provided
                    Local<String> ToString(Isolate* isolate) const);
                                  ^
../node-expat.cc:103:38: error: no matching member function for call to
      'ToObject'
        Local<Object> obj = info[0]->ToObject();
                            ~~~~~~~~~^~~~~~~~
/Users/willin/.node-gyp/12.3.1/include/node/v8.h:2532:44: note: candidate
      function not viable: requires single argument 'context', but no arguments
      were provided
  V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                           ^
/Users/willin/.node-gyp/12.3.1/include/node/v8.h:2546:35: note: candidate
      function not viable: requires single argument 'isolate', but no arguments
      were provided
                    Local<Object> ToObject(Isolate* isolate) const);
                                  ^
../node-expat.cc:124:30: error: too few arguments to function call, single
      argument 'isolate' was not specified
    int len = str.Utf8Length();
              ~~~~~~~~~~~~~~ ^
/Users/willin/.node-gyp/12.3.1/include/node/v8.h:2678:3: note: 'Utf8Length'
      declared here
  int Utf8Length(Isolate* isolate) const;
  ^
../node-expat.cc:130:26: error: cannot initialize a parameter of type
      'v8::Isolate *' with an rvalue of type 'char *'
    assert(str.WriteUtf8(static_cast<char *>(buf), len) == len);
                         ^~~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/assert.h:93:25: note:
      expanded from macro 'assert'
    (__builtin_expect(!(e), 0) ? __assert_rtn(__func__, __FILE__, __LINE...
                        ^
/Users/willin/.node-gyp/12.3.1/include/node/v8.h:2738:26: note: passing argument
      to parameter 'isolate' here
  int WriteUtf8(Isolate* isolate, char* buffer, int length = -1,
                         ^
../node-expat.cc:301:13: warning: 'Set' is deprecated: Use maybe version
      [-Wdeprecated-declarations]
      attr->Set(Nan::New(atts1[0]).ToLocalChecked(), Nan::New(atts1[1])....
            ^
/Users/willin/.node-gyp/12.3.1/include/node/v8.h:3358:3: note: 'Set' has been
      explicitly marked deprecated here
  V8_DEPRECATE_SOON("Use maybe version",
  ^
/Users/willin/.node-gyp/12.3.1/include/node/v8config.h:322:29: note: expanded
      from macro 'V8_DEPRECATE_SOON'
  declarator __attribute__((deprecated(message)))
                            ^
../node-expat.cc:304:5: error: use of undeclared identifier 'Handle'; did you
      mean 'handle'?
    Handle<Value> argv[3] = { Nan::New("startElement").ToLocalChecked(),
    ^~~~~~
    handle
../../nan/nan_object_wrap.h:41:32: note: 'handle' declared here
  inline v8::Local<v8::Object> handle() const {
                               ^
../node-expat.cc:304:5: error: call to non-static member function without an
      object argument
    Handle<Value> argv[3] = { Nan::New("startElement").ToLocalChecked(),
    ^~~~~~
../node-expat.cc:304:12: error: 'Value' does not refer to a value
    Handle<Value> argv[3] = { Nan::New("startElement").ToLocalChecked(),
           ^
/Users/willin/.node-gyp/12.3.1/include/node/v8.h:2240:17: note: declared here
class V8_EXPORT Value : public Data {
                ^
../node-expat.cc:304:19: error: use of undeclared identifier 'argv'
    Handle<Value> argv[3] = { Nan::New("startElement").ToLocalChecked(),
                  ^
../node-expat.cc:307:21: error: use of undeclared identifier 'argv'
    parser->Emit(3, argv);
                    ^
../node-expat.cc:317:5: error: use of undeclared identifier 'Handle'; did you
      mean 'handle'?
    Handle<Value> argv[2] = { Nan::New("endElement").ToLocalChecked(), N...
    ^~~~~~
    handle
../../nan/nan_object_wrap.h:41:32: note: 'handle' declared here
  inline v8::Local<v8::Object> handle() const {
                               ^
../node-expat.cc:317:5: error: call to non-static member function without an
      object argument
    Handle<Value> argv[2] = { Nan::New("endElement").ToLocalChecked(), N...
    ^~~~~~
../node-expat.cc:317:12: error: 'Value' does not refer to a value
    Handle<Value> argv[2] = { Nan::New("endElement").ToLocalChecked(), N...
           ^
/Users/willin/.node-gyp/12.3.1/include/node/v8.h:2240:17: note: declared here
class V8_EXPORT Value : public Data {
                ^
../node-expat.cc:317:19: error: use of undeclared identifier 'argv'
    Handle<Value> argv[2] = { Nan::New("endElement").ToLocalChecked(), N...
                  ^
../node-expat.cc:318:21: error: use of undeclared identifier 'argv'
    parser->Emit(2, argv);
                    ^
../node-expat.cc:327:5: error: use of undeclared identifier 'Handle'; did you
      mean 'handle'?
    Handle<Value> argv[1] = { Nan::New("startCdata").ToLocalChecked() };
    ^~~~~~
    handle
../../nan/nan_object_wrap.h:41:32: note: 'handle' declared here
  inline v8::Local<v8::Object> handle() const {
                               ^
../node-expat.cc:327:5: error: call to non-static member function without an
      object argument
    Handle<Value> argv[1] = { Nan::New("startCdata").ToLocalChecked() };
    ^~~~~~
fatal error: too many errors emitted, stopping now [-ferror-limit=]
1 warning and 20 errors generated.
make: *** [Release/obj.target/node_expat/node-expat.o] Error 1
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:262:23)
gyp ERR! stack     at ChildProcess.emit (events.js:200:13)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)
gyp ERR! System Darwin 18.7.0
gyp ERR! command "/usr/local/Cellar/node/12.3.1/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Users/willin/Documents/class-go/classgo-server/node_modules/node-expat
gyp ERR! node -v v12.3.1
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
npm WARN sequelize-typescript@0.6.6 requires a peer of reflect-metadata@>=0.1.9 but none is installed. You must install peer dependencies yourself.
npm WARN classgo-server@1.0.0 No description
npm WARN classgo-server@1.0.0 No repository field.

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! node-expat@2.3.17 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the node-expat@2.3.17 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/willin/.npm/_logs/2019-09-11T06_19_34_468Z-debug.log
 ✘  ~/Documents/class-go/classgo-server   master  npm i node-expat

> node-expat@2.3.17 install /Users/willin/Documents/class-go/classgo-server/node_modules/node-expat
> node-gyp rebuild

  CC(target) Release/obj.target/expat/deps/libexpat/lib/xmlparse.o
  CC(target) Release/obj.target/expat/deps/libexpat/lib/xmltok.o
  CC(target) Release/obj.target/expat/deps/libexpat/lib/xmlrole.o
  LIBTOOL-STATIC Release/libexpat.a
  CXX(target) Release/obj.target/node_expat/node-expat.o
../node-expat.cc:11:26: error: no template named 'Handle'
  static void Initialize(Handle<Object> target)
                         ^
../node-expat.cc:481:23: error: no template named 'Handle'
  void Emit(int argc, Handle<Value> argv[])
                      ^
../node-expat.cc:29:69: error: too few arguments to function call, single
      argument 'context' was not specified
    target->Set(Nan::New("Parser").ToLocalChecked(), t->GetFunction());
                                                     ~~~~~~~~~~~~~~ ^
/Users/willin/.node-gyp/12.3.1/include/node/v8.h:5947:3: note: 'GetFunction'
      declared here
  V8_WARN_UNUSED_RESULT MaybeLocal<Function> GetFunction(
  ^
/Users/willin/.node-gyp/12.3.1/include/node/v8config.h:347:31: note: expanded
      from macro 'V8_WARN_UNUSED_RESULT'
#define V8_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
                              ^
../node-expat.cc:98:24: error: no matching member function for call to
      'ToString'
        str = info[0]->ToString();
              ~~~~~~~~~^~~~~~~~
/Users/willin/.node-gyp/12.3.1/include/node/v8.h:2528:44: note: candidate
      function not viable: requires single argument 'context', but no arguments
      were provided
  V8_WARN_UNUSED_RESULT MaybeLocal<String> ToString(
                                           ^
/Users/willin/.node-gyp/12.3.1/include/node/v8.h:2544:35: note: candidate
      function not viable: requires single argument 'isolate', but no arguments
      were provided
                    Local<String> ToString(Isolate* isolate) const);
                                  ^
../node-expat.cc:103:38: error: no matching member function for call to
      'ToObject'
        Local<Object> obj = info[0]->ToObject();
                            ~~~~~~~~~^~~~~~~~
/Users/willin/.node-gyp/12.3.1/include/node/v8.h:2532:44: note: candidate
      function not viable: requires single argument 'context', but no arguments
      were provided
  V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                           ^
/Users/willin/.node-gyp/12.3.1/include/node/v8.h:2546:35: note: candidate
      function not viable: requires single argument 'isolate', but no arguments
      were provided
                    Local<Object> ToObject(Isolate* isolate) const);
                                  ^
../node-expat.cc:124:30: error: too few arguments to function call, single
      argument 'isolate' was not specified
    int len = str.Utf8Length();
              ~~~~~~~~~~~~~~ ^
/Users/willin/.node-gyp/12.3.1/include/node/v8.h:2678:3: note: 'Utf8Length'
      declared here
  int Utf8Length(Isolate* isolate) const;
  ^
../node-expat.cc:130:26: error: cannot initialize a parameter of type
      'v8::Isolate *' with an rvalue of type 'char *'
    assert(str.WriteUtf8(static_cast<char *>(buf), len) == len);
                         ^~~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/assert.h:93:25: note:
      expanded from macro 'assert'
    (__builtin_expect(!(e), 0) ? __assert_rtn(__func__, __FILE__, __LINE...
                        ^
/Users/willin/.node-gyp/12.3.1/include/node/v8.h:2738:26: note: passing argument
      to parameter 'isolate' here
  int WriteUtf8(Isolate* isolate, char* buffer, int length = -1,
                         ^
../node-expat.cc:301:13: warning: 'Set' is deprecated: Use maybe version
      [-Wdeprecated-declarations]
      attr->Set(Nan::New(atts1[0]).ToLocalChecked(), Nan::New(atts1[1])....
            ^
/Users/willin/.node-gyp/12.3.1/include/node/v8.h:3358:3: note: 'Set' has been
      explicitly marked deprecated here
  V8_DEPRECATE_SOON("Use maybe version",
  ^
/Users/willin/.node-gyp/12.3.1/include/node/v8config.h:322:29: note: expanded
      from macro 'V8_DEPRECATE_SOON'
  declarator __attribute__((deprecated(message)))
                            ^
../node-expat.cc:304:5: error: use of undeclared identifier 'Handle'; did you
      mean 'handle'?
    Handle<Value> argv[3] = { Nan::New("startElement").ToLocalChecked(),
    ^~~~~~
    handle
../../nan/nan_object_wrap.h:41:32: note: 'handle' declared here
  inline v8::Local<v8::Object> handle() const {
                               ^
../node-expat.cc:304:5: error: call to non-static member function without an
      object argument
    Handle<Value> argv[3] = { Nan::New("startElement").ToLocalChecked(),
    ^~~~~~
../node-expat.cc:304:12: error: 'Value' does not refer to a value
    Handle<Value> argv[3] = { Nan::New("startElement").ToLocalChecked(),
           ^
/Users/willin/.node-gyp/12.3.1/include/node/v8.h:2240:17: note: declared here
class V8_EXPORT Value : public Data {
                ^
../node-expat.cc:304:19: error: use of undeclared identifier 'argv'
    Handle<Value> argv[3] = { Nan::New("startElement").ToLocalChecked(),
                  ^
../node-expat.cc:307:21: error: use of undeclared identifier 'argv'
    parser->Emit(3, argv);
                    ^
../node-expat.cc:317:5: error: use of undeclared identifier 'Handle'; did you
      mean 'handle'?
    Handle<Value> argv[2] = { Nan::New("endElement").ToLocalChecked(), N...
    ^~~~~~
    handle
../../nan/nan_object_wrap.h:41:32: note: 'handle' declared here
  inline v8::Local<v8::Object> handle() const {
                               ^
../node-expat.cc:317:5: error: call to non-static member function without an
      object argument
    Handle<Value> argv[2] = { Nan::New("endElement").ToLocalChecked(), N...
    ^~~~~~
../node-expat.cc:317:12: error: 'Value' does not refer to a value
    Handle<Value> argv[2] = { Nan::New("endElement").ToLocalChecked(), N...
           ^
/Users/willin/.node-gyp/12.3.1/include/node/v8.h:2240:17: note: declared here
class V8_EXPORT Value : public Data {
                ^
../node-expat.cc:317:19: error: use of undeclared identifier 'argv'
    Handle<Value> argv[2] = { Nan::New("endElement").ToLocalChecked(), N...
                  ^
../node-expat.cc:318:21: error: use of undeclared identifier 'argv'
    parser->Emit(2, argv);
                    ^
../node-expat.cc:327:5: error: use of undeclared identifier 'Handle'; did you
      mean 'handle'?
    Handle<Value> argv[1] = { Nan::New("startCdata").ToLocalChecked() };
    ^~~~~~
    handle
../../nan/nan_object_wrap.h:41:32: note: 'handle' declared here
  inline v8::Local<v8::Object> handle() const {
                               ^
../node-expat.cc:327:5: error: call to non-static member function without an
      object argument
    Handle<Value> argv[1] = { Nan::New("startCdata").ToLocalChecked() };
    ^~~~~~
fatal error: too many errors emitted, stopping now [-ferror-limit=]
1 warning and 20 errors generated.
make: *** [Release/obj.target/node_expat/node-expat.o] Error 1
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:262:23)
gyp ERR! stack     at ChildProcess.emit (events.js:200:13)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)
gyp ERR! System Darwin 18.7.0
gyp ERR! command "/usr/local/Cellar/node/12.3.1/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Users/willin/Documents/class-go/classgo-server/node_modules/node-expat
gyp ERR! node -v v12.3.1
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
npm WARN sequelize-typescript@0.6.6 requires a peer of reflect-metadata@>=0.1.9 but none is installed. You must install peer dependencies yourself.
npm WARN classgo-server@1.0.0 No description
npm WARN classgo-server@1.0.0 No repository field.

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! node-expat@2.3.17 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the node-expat@2.3.17 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
brandonros commented 5 years ago

now that node.js v12 went LTS, I think this is going to be a bigger issue...

redstone99 commented 5 years ago

Build still fails on Ubuntu 19.10, node 12.13.0, Here a portion of the output at the point of first error:

`../../nan/nan_implementation_12_inl.h: In static member function ‘static Nan::imp::FactoryBase::return_t Nan::imp::Factory::New(Nan::FunctionCallback, v8::Local)’: ../../nan/nan_implementation_12_inl.h:103:42: error: cannot convert ‘v8::Isolate*’ to ‘v8::Local’ 103 return scope.Escape(v8::Function::New( isolate ^~~
v8::Isolate*

In file included from /home/redstone/.cache/node-gyp/12.13.0/include/node/node.h:63, from ../../nan/nan.h:51, from ../node-expat.cc:1: /home/redstone/.cache/node-gyp/12.13.0/include/node/v8.h:4171:22: note: initializing argument 1 of ‘static v8::MaybeLocal v8::Function::New(v8::Local, v8::FunctionCallback, v8::Local, int, v8::ConstructorBehavior, v8::SideEffectType)’ 4171 | Local context, FunctionCallback callback, | ~~~^~~ In file included from ../../nan/nan_new.h:189, from ../../nan/nan.h:203, from ../node-expat.cc:1: ../../nan/nan_implementation_12_inl.h: In static member function ‘static Nan::imp::FactoryBase::return_t Nan::imp::Factory::New(v8::Local)’: ../../nan/nan_implementation_12_inl.h:337:37: error: no matching function for call to ‘v8::StringObject::New(v8::Local&)’ 337 | return v8::StringObject::New(value).As(); | ^ In file included from /home/redstone/.cache/node-gyp/12.13.0/include/node/node.h:63, from ../../nan/nan.h:51, from ../node-expat.cc:1: /home/redstone/.cache/node-gyp/12.13.0/include/node/v8.h:5426:23: note: candidate: ‘static v8::Local v8::StringObject::New(v8::Isolate, v8::Local)’ 5426 | static Local New(Isolate isolate, Local value); | ^~~ /home/redstone/.cache/node-gyp/12.13.0/include/node/v8.h:5426:23: note: candidate expects 2 arguments, 1 provided In file included from ../../nan/nan_new.h:189, from ../../nan/nan.h:203, from ../node-expat.cc:1: ../../nan/nan_implementation_12_inl.h:337:58: error: expected primary-expression before ‘>’ token 337 | return v8::StringObject::New(value).As(); | ^ ../../nan/nan_implementation_12_inl.h:337:60: error: expected primary-expression before ‘)’ token 337 | return v8::StringObject::New(value).As(); | ^ In file included from ../node-expat.cc:1: `

abhi11210646 commented 4 years ago

Build still fails on Ubuntu 18.04.3 LTS, node 12.14.0.

brandonros commented 4 years ago

Fixed in https://github.com/astro/node-expat/pull/196

sbley commented 4 years ago

@brandonros Are you sure that #196 fixes this? I use latest node-expat 2.3.18 that includes the fix, but the build still fails on Ubuntu.

QAnders commented 3 years ago

I am getting the same on Ubuntu 20.04.1 LTS trying to build on node v12.13.1 (for AWS Lambda).

Using v2.4.0 of node-expat...

It was working fine on development machine (older versions where the project has been stale for a while) but moving into a new dev env. I started getting this error.

QAnders commented 3 years ago

After some more testing I managed to get round the issue by updating npm and node versions:

Updated npm to 7.13.0 (npm install -g npm)

Changed to use node v12.22.1 (latest v12), (nvm install v12.22.1 nvm use)

rm -r node_modules/

npm i

After that the package is built and working fine!

edwinm commented 8 months ago

Same on Ubuntu 22 with Node 20

Ubuntu 22.04.4 LTS Node v20.11.1 npm 10.2.4 yarn 1.22.22

Output:

$ yarn add node-expat                                                                                                        (master)
yarn add v1.22.22
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
warning " > next-auth@3.29.10" has incorrect peer dependency "react@^16.13.1 || ^17".
warning " > next-auth@3.29.10" has incorrect peer dependency "react-dom@^16.13.1 || ^17".
warning "next-auth > @next-auth/prisma-legacy-adapter@0.1.2" has incorrect peer dependency "@prisma/client@^2.16.1".
warning " > react-hook-form@7.2.1" has incorrect peer dependency "react@^16.8.0 || ^17".
warning " > react-query@3.6.0" has incorrect peer dependency "react@^16.8.0 || ^17.0.0".
warning " > rollup-plugin-svelte@7.1.0" has unmet peer dependency "rollup@>=2.0.0".
warning " > typegraphql-prisma@0.9.4" has unmet peer dependency "@prisma/cli@~2.14.0".
warning " > typegraphql-prisma@0.9.4" has incorrect peer dependency "@prisma/client@~2.14.0".
warning " > typegraphql-prisma@0.9.4" has unmet peer dependency "@types/graphql-fields@^1.3.3".
warning " > typegraphql-prisma@0.9.4" has unmet peer dependency "graphql-fields@^2.0.3".
warning " > typegraphql-prisma@0.9.4" has unmet peer dependency "graphql-type-json@^0.3.2".
warning " > typegraphql-prisma@0.9.4" has unmet peer dependency "type-graphql@^1.1.1".
[4/4] Building fresh packages...
[-/8] ⠈ waiting...
[6/8] ⠈ node-expat
[-/8] ⠈ waiting...
[4/8] ⠈ node-expat
error /usr/local/cusdis/node_modules/xml2json/node_modules/node-expat: Command failed.
Exit code: 1
Command: node-gyp rebuild
Arguments:
Directory: /usr/local/cusdis/node_modules/xml2json/node_modules/node-expat
Output:
gyp info it worked if it ends with ok
gyp info using node-gyp@10.0.1
gyp info using node@20.11.1 | linux | x64
gyp info find Python using Python version 3.10.12 found at "/usr/bin/python3"

gyp info spawn /usr/bin/python3
gyp info spawn args [
gyp info spawn args '/home/edwin/.nvm/versions/node/v20.11.1/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py',
gyp info spawn args 'binding.gyp',
gyp info spawn args '-f',
gyp info spawn args 'make',
gyp info spawn args '-I',
gyp info spawn args '/usr/local/cusdis/node_modules/xml2json/node_modules/node-expat/build/config.gypi',
gyp info spawn args '-I',
gyp info spawn args '/home/edwin/.nvm/versions/node/v20.11.1/lib/node_modules/npm/node_modules/node-gyp/addon.gypi',
gyp info spawn args '-I',
gyp info spawn args '/home/edwin/.cache/node-gyp/20.11.1/include/node/common.gypi',
gyp info spawn args '-Dlibrary=shared_library',
gyp info spawn args '-Dvisibility=default',
gyp info spawn args '-Dnode_root_dir=/home/edwin/.cache/node-gyp/20.11.1',
gyp info spawn args '-Dnode_gyp_dir=/home/edwin/.nvm/versions/node/v20.11.1/lib/node_modules/npm/node_modules/node-gyp',
gyp info spawn args '-Dnode_lib_file=/home/edwin/.cache/node-gyp/20.11.1/<(target_arch)/node.lib',
gyp info spawn args '-Dmodule_root_dir=/usr/local/cusdis/node_modules/xml2json/node_modules/node-expat',
gyp info spawn args '-Dnode_engine=v8',
gyp info spawn args '--depth=.',
gyp info spawn args '--no-parallel',
gyp info spawn args '--generator-output',
gyp info spawn args 'build',
gyp info spawn args '-Goutput_dir=.'
gyp info spawn args ]
gyp info spawn make
gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]
make: Entering directory '/usr/local/cusdis/node_modules/xml2json/node_modules/node-expat/build'
  CC(target) Release/obj.target/expat/deps/libexpat/lib/xmlparse.o
  CC(target) Release/obj.target/expat/deps/libexpat/lib/xmltok.o
In file included from ../deps/libexpat/lib/xmltok.c:306:
../deps/libexpat/lib/xmltok_impl.c: In function ‘normal_isPublicId’:
../deps/libexpat/lib/xmltok_impl.c:1404:10: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1404 |       if (!(BYTE_TO_ASCII(enc, ptr) & ~0x7f))
      |          ^
../deps/libexpat/lib/xmltok_impl.c:1406:5: note: here
 1406 |     default:
      |     ^~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘normal_sameName’:
../deps/libexpat/lib/xmltok_impl.c:1624:10: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1624 |       if (*ptr1++ != *ptr2++) \
      |          ^
../deps/libexpat/lib/xmltok_impl.c:1626:5: note: in expansion of macro ‘LEAD_CASE’
 1626 |     LEAD_CASE(4) LEAD_CASE(3) LEAD_CASE(2)
      |     ^~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:1623:5: note: here
 1623 |     case BT_LEAD ## n: \
      |     ^~~~
../deps/libexpat/lib/xmltok_impl.c:1626:18: note: in expansion of macro ‘LEAD_CASE’
 1626 |     LEAD_CASE(4) LEAD_CASE(3) LEAD_CASE(2)
      |                  ^~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:1624:10: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1624 |       if (*ptr1++ != *ptr2++) \
      |          ^
../deps/libexpat/lib/xmltok_impl.c:1626:18: note: in expansion of macro ‘LEAD_CASE’
 1626 |     LEAD_CASE(4) LEAD_CASE(3) LEAD_CASE(2)
      |                  ^~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:1623:5: note: here
 1623 |     case BT_LEAD ## n: \
      |     ^~~~
../deps/libexpat/lib/xmltok_impl.c:1626:31: note: in expansion of macro ‘LEAD_CASE’
 1626 |     LEAD_CASE(4) LEAD_CASE(3) LEAD_CASE(2)
      |                               ^~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘normal_scanRef’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:509:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  509 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:509:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  509 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:518:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  518 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:518:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  518 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘normal_scanPercent’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:886:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  886 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:886:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  886 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:896:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  896 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:896:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  896 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘normal_scanLt’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:693:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  693 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:693:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  693 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:731:7: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  731 |       CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |       ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:731:7: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  731 |       CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |       ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:743:11: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  743 |           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |           ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:743:11: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  743 |           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |           ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:720:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  720 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:720:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  720 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘normal_scanPi’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:246:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  246 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:246:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  246 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:253:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  253 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:253:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  253 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘normal_scanEndTag’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:397:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  397 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:397:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  397 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:404:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  404 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:404:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  404 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘normal_scanAtts’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:552:7: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  552 |       CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |       ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:552:7: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  552 |       CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |       ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:649:11: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  649 |           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |           ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:649:11: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  649 |           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |           ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:541:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  541 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:541:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  541 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘normal_prologTok’:
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:1153:9: note: in expansion of macro ‘CHECK_NAME_CASES’
 1153 |         CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |         ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:1153:9: note: in expansion of macro ‘CHECK_NAME_CASES’
 1153 |         CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |         ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:1139:5: note: in expansion of macro ‘CHECK_NAME_CASES’
 1139 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:1139:5: note: in expansion of macro ‘CHECK_NAME_CASES’
 1139 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘normal_scanPoundName’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:914:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  914 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:914:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  914 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:921:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  921 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:921:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  921 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
In file included from ../deps/libexpat/lib/xmltok.c:791:
../deps/libexpat/lib/xmltok_impl.c: In function ‘little2_isPublicId’:
../deps/libexpat/lib/xmltok_impl.c:1404:10: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1404 |       if (!(BYTE_TO_ASCII(enc, ptr) & ~0x7f))
      |          ^
../deps/libexpat/lib/xmltok_impl.c:1406:5: note: here
 1406 |     default:
      |     ^~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘little2_sameName’:
../deps/libexpat/lib/xmltok_impl.c:1624:10: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1624 |       if (*ptr1++ != *ptr2++) \
      |          ^
../deps/libexpat/lib/xmltok_impl.c:1626:5: note: in expansion of macro ‘LEAD_CASE’
 1626 |     LEAD_CASE(4) LEAD_CASE(3) LEAD_CASE(2)
      |     ^~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:1623:5: note: here
 1623 |     case BT_LEAD ## n: \
      |     ^~~~
../deps/libexpat/lib/xmltok_impl.c:1626:18: note: in expansion of macro ‘LEAD_CASE’
 1626 |     LEAD_CASE(4) LEAD_CASE(3) LEAD_CASE(2)
      |                  ^~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:1624:10: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1624 |       if (*ptr1++ != *ptr2++) \
      |          ^
../deps/libexpat/lib/xmltok_impl.c:1626:18: note: in expansion of macro ‘LEAD_CASE’
 1626 |     LEAD_CASE(4) LEAD_CASE(3) LEAD_CASE(2)
      |                  ^~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:1623:5: note: here
 1623 |     case BT_LEAD ## n: \
      |     ^~~~
../deps/libexpat/lib/xmltok_impl.c:1626:31: note: in expansion of macro ‘LEAD_CASE’
 1626 |     LEAD_CASE(4) LEAD_CASE(3) LEAD_CASE(2)
      |                               ^~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘little2_scanRef’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:509:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  509 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:509:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  509 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:518:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  518 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:518:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  518 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘little2_scanPercent’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:886:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  886 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:886:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  886 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:896:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  896 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:896:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  896 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘little2_scanLt’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:693:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  693 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:693:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  693 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:731:7: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  731 |       CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |       ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:731:7: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  731 |       CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |       ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:743:11: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  743 |           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |           ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:743:11: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  743 |           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |           ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:720:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  720 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:720:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  720 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘little2_scanPi’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:246:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  246 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:246:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  246 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:253:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  253 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:253:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  253 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘little2_scanEndTag’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:397:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  397 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:397:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  397 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:404:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  404 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:404:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  404 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘little2_scanAtts’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:552:7: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  552 |       CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |       ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:552:7: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  552 |       CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |       ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:649:11: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  649 |           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |           ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:649:11: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  649 |           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |           ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:541:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  541 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:541:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  541 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘little2_prologTok’:
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:1153:9: note: in expansion of macro ‘CHECK_NAME_CASES’
 1153 |         CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |         ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:1153:9: note: in expansion of macro ‘CHECK_NAME_CASES’
 1153 |         CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |         ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:1139:5: note: in expansion of macro ‘CHECK_NAME_CASES’
 1139 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:1139:5: note: in expansion of macro ‘CHECK_NAME_CASES’
 1139 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘little2_scanPoundName’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:914:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  914 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:914:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  914 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:921:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  921 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:921:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  921 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
In file included from ../deps/libexpat/lib/xmltok.c:932:
../deps/libexpat/lib/xmltok_impl.c: In function ‘big2_isPublicId’:
../deps/libexpat/lib/xmltok_impl.c:1404:10: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1404 |       if (!(BYTE_TO_ASCII(enc, ptr) & ~0x7f))
      |          ^
../deps/libexpat/lib/xmltok_impl.c:1406:5: note: here
 1406 |     default:
      |     ^~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘big2_sameName’:
../deps/libexpat/lib/xmltok_impl.c:1624:10: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1624 |       if (*ptr1++ != *ptr2++) \
      |          ^
../deps/libexpat/lib/xmltok_impl.c:1626:5: note: in expansion of macro ‘LEAD_CASE’
 1626 |     LEAD_CASE(4) LEAD_CASE(3) LEAD_CASE(2)
      |     ^~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:1623:5: note: here
 1623 |     case BT_LEAD ## n: \
      |     ^~~~
../deps/libexpat/lib/xmltok_impl.c:1626:18: note: in expansion of macro ‘LEAD_CASE’
 1626 |     LEAD_CASE(4) LEAD_CASE(3) LEAD_CASE(2)
      |                  ^~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:1624:10: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1624 |       if (*ptr1++ != *ptr2++) \
      |          ^
../deps/libexpat/lib/xmltok_impl.c:1626:18: note: in expansion of macro ‘LEAD_CASE’
 1626 |     LEAD_CASE(4) LEAD_CASE(3) LEAD_CASE(2)
      |                  ^~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:1623:5: note: here
 1623 |     case BT_LEAD ## n: \
      |     ^~~~
../deps/libexpat/lib/xmltok_impl.c:1626:31: note: in expansion of macro ‘LEAD_CASE’
 1626 |     LEAD_CASE(4) LEAD_CASE(3) LEAD_CASE(2)
      |                               ^~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘big2_scanRef’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:509:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  509 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:509:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  509 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:518:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  518 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:518:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  518 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘big2_scanPercent’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:886:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  886 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:886:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  886 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:896:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  896 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:896:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  896 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘big2_scanLt’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:693:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  693 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:693:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  693 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:731:7: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  731 |       CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |       ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:731:7: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  731 |       CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |       ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:743:11: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  743 |           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |           ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:743:11: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  743 |           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |           ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:720:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  720 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:720:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  720 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘big2_scanPi’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:246:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  246 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:246:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  246 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:253:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  253 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:253:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  253 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘big2_scanEndTag’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:397:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  397 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:397:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  397 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:404:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  404 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:404:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  404 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘big2_scanAtts’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:552:7: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  552 |       CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |       ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:552:7: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  552 |       CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |       ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:649:11: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  649 |           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |           ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:649:11: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  649 |           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |           ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:541:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  541 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:541:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  541 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘big2_prologTok’:
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:1153:9: note: in expansion of macro ‘CHECK_NAME_CASES’
 1153 |         CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |         ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:1153:9: note: in expansion of macro ‘CHECK_NAME_CASES’
 1153 |         CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |         ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:1139:5: note: in expansion of macro ‘CHECK_NAME_CASES’
 1139 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:1139:5: note: in expansion of macro ‘CHECK_NAME_CASES’
 1139 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c: In function ‘big2_scanPoundName’:
../deps/libexpat/lib/xmltok_impl.c:74:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   74 |     if (!IS_NMSTRT_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:914:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  914 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:78:3: note: here
   78 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:914:3: note: in expansion of macro ‘CHECK_NMSTRT_CASES’
  914 |   CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
      |   ^~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:46:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
   46 |     if (!IS_NAME_CHAR_MINBPC(enc, ptr)) { \
      |        ^
../deps/libexpat/lib/xmltok_impl.c:921:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  921 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_impl.c:50:3: note: here
   50 |   case BT_NMSTRT: \
      |   ^~~~
../deps/libexpat/lib/xmltok_impl.c:921:5: note: in expansion of macro ‘CHECK_NAME_CASES’
  921 |     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
      |     ^~~~~~~~~~~~~~~~
In file included from ../deps/libexpat/lib/xmltok.c:17:
../deps/libexpat/lib/xmltok_ns.c: In function ‘findEncoding’:
../deps/libexpat/lib/xmltok.h:262:10: warning: ‘buf’ may be used uninitialized [-Wmaybe-uninitialized]
  262 |   (((enc)->utf8Convert)(enc, fromP, fromLim, toP, toLim))
      |   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_ns.c:78:3: note: in expansion of macro ‘XmlUtf8Convert’
   78 |   XmlUtf8Convert(enc, &ptr, end, &p, p + ENCODING_MAX - 1);
      |   ^~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok.h:262:10: note: by argument 5 of type ‘const char *’ to ‘enum XML_Convert_Result(const ENCODING *, const char **, const char *, char **, const char *)’ {aka ‘enum XML_Convert_Result(const struct encoding *, const char **, const char *, char **, const char *)’}
  262 |   (((enc)->utf8Convert)(enc, fromP, fromLim, toP, toLim))
      |   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_ns.c:78:3: note: in expansion of macro ‘XmlUtf8Convert’
   78 |   XmlUtf8Convert(enc, &ptr, end, &p, p + ENCODING_MAX - 1);
      |   ^~~~~~~~~~~~~~
In file included from ../deps/libexpat/lib/xmltok.c:1718:
../deps/libexpat/lib/xmltok_ns.c:75:8: note: ‘buf’ declared here
   75 |   char buf[ENCODING_MAX];
      |        ^~~
In file included from ../deps/libexpat/lib/xmltok.c:17:
../deps/libexpat/lib/xmltok_ns.c: In function ‘findEncodingNS’:
../deps/libexpat/lib/xmltok.h:262:10: warning: ‘buf’ may be used uninitialized [-Wmaybe-uninitialized]
  262 |   (((enc)->utf8Convert)(enc, fromP, fromLim, toP, toLim))
      |   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_ns.c:78:3: note: in expansion of macro ‘XmlUtf8Convert’
   78 |   XmlUtf8Convert(enc, &ptr, end, &p, p + ENCODING_MAX - 1);
      |   ^~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok.h:262:10: note: by argument 5 of type ‘const char *’ to ‘enum XML_Convert_Result(const ENCODING *, const char **, const char *, char **, const char *)’ {aka ‘enum XML_Convert_Result(const struct encoding *, const char **, const char *, char **, const char *)’}
  262 |   (((enc)->utf8Convert)(enc, fromP, fromLim, toP, toLim))
      |   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../deps/libexpat/lib/xmltok_ns.c:78:3: note: in expansion of macro ‘XmlUtf8Convert’
   78 |   XmlUtf8Convert(enc, &ptr, end, &p, p + ENCODING_MAX - 1);
      |   ^~~~~~~~~~~~~~
In file included from ../deps/libexpat/lib/xmltok.c:1729:
../deps/libexpat/lib/xmltok_ns.c:75:8: note: ‘buf’ declared here
   75 |   char buf[ENCODING_MAX];
      |        ^~~
  CC(target) Release/obj.target/expat/deps/libexpat/lib/xmlrole.o
rm -f Release/obj.target/deps/libexpat/libexpat.a Release/obj.target/deps/libexpat/libexpat.a.ar-file-list; mkdir -p `dirname Release/obj.target/deps/libexpat/libexpat.a`
ar crs Release/obj.target/deps/libexpat/libexpat.a @Release/obj.target/deps/libexpat/libexpat.a.ar-file-list
  COPY Release/libexpat.a
  CXX(target) Release/obj.target/node_expat/node-expat.o
In file included from ../../nan/nan.h:176,
                 from ../node-expat.cc:1:
../../nan/nan_callbacks.h:55:23: error: ‘AccessorSignature’ is not a member of ‘v8’
   55 | typedef v8::Local<v8::AccessorSignature> Sig;
      |                       ^~~~~~~~~~~~~~~~~
../../nan/nan_callbacks.h:55:40: error: template argument 1 is invalid
   55 | typedef v8::Local<v8::AccessorSignature> Sig;
      |                                        ^
In file included from ../node-expat.cc:1:
../../nan/nan.h: In function ‘void Nan::SetAccessor(v8::Local<v8::ObjectTemplate>, v8::Local<v8::String>, Nan::GetterCallback, Nan::SetterCallback, v8::Local<v8::Value>, v8::AccessControl, v8::PropertyAttribute, Nan::imp::Sig)’:
../../nan/nan.h:2542:19: error: no matching function for call to ‘v8::ObjectTemplate::SetAccessor(v8::Local<v8::String>&, void (*&)(v8::Local<v8::Name>, const v8::PropertyCallbackInfo<v8::Value>&), void (*&)(v8::Local<v8::Name>, v8::Local<v8::Value>, const v8::PropertyCallbackInfo<void>&), v8::Local<v8::Object>&, v8::AccessControl&, v8::PropertyAttribute&, Nan::imp::Sig&)’
 2542 |   tpl->SetAccessor(
      |   ~~~~~~~~~~~~~~~~^
 2543 |       name
      |       ~~~~
 2544 |     , getter_
      |     ~~~~~~~~~
 2545 |     , setter_
      |     ~~~~~~~~~
 2546 |     , obj
      |     ~~~~~
 2547 |     , settings
      |     ~~~~~~~~~~
 2548 |     , attribute
      |     ~~~~~~~~~~~
 2549 |     , signature);
      |     ~~~~~~~~~~~~
In file included from /home/edwin/.cache/node-gyp/20.11.1/include/node/v8-function.h:15,
                 from /home/edwin/.cache/node-gyp/20.11.1/include/node/v8.h:33,
                 from /home/edwin/.cache/node-gyp/20.11.1/include/node/node.h:73,
                 from ../../nan/nan.h:56,
                 from ../node-expat.cc:1:
/home/edwin/.cache/node-gyp/20.11.1/include/node/v8-template.h:809:8: note: candidate: ‘void v8::ObjectTemplate::SetAccessor(v8::Local<v8::String>, v8::AccessorGetterCallback, v8::AccessorSetterCallback, v8::Local<v8::Value>, v8::AccessControl, v8::PropertyAttribute, v8::SideEffectType, v8::SideEffectType)’
  809 |   void SetAccessor(
      |        ^~~~~~~~~~~
/home/edwin/.cache/node-gyp/20.11.1/include/node/v8-template.h:814:22: note:   no known conversion for argument 7 from ‘Nan::imp::Sig’ {aka ‘int’} to ‘v8::SideEffectType’
  814 |       SideEffectType getter_side_effect_type = SideEffectType::kHasSideEffect,
      |       ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/edwin/.cache/node-gyp/20.11.1/include/node/v8-template.h:816:8: note: candidate: ‘void v8::ObjectTemplate::SetAccessor(v8::Local<v8::Name>, v8::AccessorNameGetterCallback, v8::AccessorNameSetterCallback, v8::Local<v8::Value>, v8::AccessControl, v8::PropertyAttribute, v8::SideEffectType, v8::SideEffectType)’
  816 |   void SetAccessor(
      |        ^~~~~~~~~~~
/home/edwin/.cache/node-gyp/20.11.1/include/node/v8-template.h:821:22: note:   no known conversion for argument 7 from ‘Nan::imp::Sig’ {aka ‘int’} to ‘v8::SideEffectType’
  821 |       SideEffectType getter_side_effect_type = SideEffectType::kHasSideEffect,
      |       ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make: *** [node_expat.target.mk:117: Release/obj.target/node_expat/node-expat.o] Error 1
make: Leaving directory '/usr/local/cusdis/node_modules/xml2json/node_modules/node-expat/build'
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.<anonymous> (/home/edwin/.nvm/versions/node/v20.11.1/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:209:23)
gyp ERR! System Linux 5.15.0-101-generic
gyp ERR! command "/home/edwin/.nvm/versions/node/v20.11.1/bin/node" "/home/edwin/.nvm/versions/node/v20.11.1/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/local/cusdis/node_modules/xml2json/node_modules/node-expat