silviucpp / epqueue Goto Github PK
View Code? Open in Web Editor NEWA high performant Erlang NIF Priority Queue implemented using a binary heap
License: MIT License
A high performant Erlang NIF Priority Queue implemented using a binary heap
License: MIT License
Hi,
we are using this lib in our Elixir project and the dependency doesn't compile since GCC 8.1. I get the following error when compiling the lib.
Previously I was downgrading gcc to older versions, but this workaround is getting less and less convenient as GCC 8.2 is now the default in Fedora 29 (which I use).
Any chance for a fix?
===> Compiling epqueue
make: Entering directory '/home/xxx/workspace/yyy/deps/epqueue/c_src'
CPP epqueue.cc
In file included from /usr/local/lib/erlang/erts-10.0.2/include/erl_nif.h:306,
from /home/xxx/workspace/yyy/deps/epqueue/c_src/epqueue.h:4,
from /home/xxx/workspace/yyy/deps/epqueue/c_src/epqueue.cc:1:
/home/xxx/workspace/yyy/deps/epqueue/c_src/epqueue.cc: In function ‘bool is_owner(ErlNifEnv*, epqueue*)’:
/usr/local/lib/erlang/erts-10.0.2/include/erl_nif_api_funcs.h:625:79: error: type qualifiers ignored on cast result type [-Werror=ignored-qualifiers]
# define enif_make_pid(ENV, PID) ((void)(ENV),(const ERL_NIF_TERM)((PID)->pid))
^
/home/xxx/workspace/yyy/deps/epqueue/c_src/epqueue.cc:59:66: note: in expansion of macro ‘enif_make_pid’
if(enif_self(env, &self) && !enif_is_identical(q->owner_pid, enif_make_pid(env, &self)))
^~~~~~~~~~~~~
/home/xxx/workspace/yyy/deps/epqueue/c_src/epqueue.cc: In function ‘ERL_NIF_TERM nif_epqueue_new(ErlNifEnv*, int, const ERL_NIF_TERM*)’:
/usr/local/lib/erlang/erts-10.0.2/include/erl_nif_api_funcs.h:625:79: error: type qualifiers ignored on cast result type [-Werror=ignored-qualifiers]
# define enif_make_pid(ENV, PID) ((void)(ENV),(const ERL_NIF_TERM)((PID)->pid))
^
/home/xxx/workspace/yyy/deps/epqueue/c_src/epqueue.cc:110:28: note: in expansion of macro ‘enif_make_pid’
qinst->owner_pid = enif_make_pid(env, &self);
^~~~~~~~~~~~~
cc1plus: all warnings being treated as errors
make: *** [nif.mk:78: /home/xxx/workspace/yyy/deps/epqueue/c_src/epqueue.o] Error 1
make: Leaving directory '/home/xxx/workspace/yyy/deps/epqueue/c_src'
===> Hook for compile failed!
Hello.
I installed your library and saw a small defect on line 25 :
case code:priv_dir(ezlib)
And taking this opportunity, I want to ask whether there is a queue without priorities, FIFO ?
Thank you.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.