Erratic behaviour of make_empty_graph(NULL)


make_empty_graph(NULL) gives sometimes

IGRAPH d2cceb6 D--- 301407984 0 -- 
+ edges from d2cceb6:


Error: cannot allocate vector of size 2.2 Gb

Is this a C library issue and what is the appropriate place to address this issue.

I am aware NULL != 0, but the function should either give an error or behave as if no parameters.

It is not a C library issue.

I guess the glue code between R and C ought to check that integers have at least size 1 (since R works with vectors, they can be size 0), and that they are not NA. I am not that familiar with the R interface.

For clarity, the issue is further followed up in this issue on GitHub.

Hallo Vincent,

As you can see I posted these issues on Github (rigraph).

I do not see much progress there. I am new and do not know how this is supposed to work.

Some errors for example from 2015 are still not fixed.


Kees Pippel

Yes, I linked to the GitHub issue to make sure that other users of this forum are also able to see that the discussion is also taking place elsewhere.

Yes, there are still quite some old issues that are still open. More recently the development has gathered pace again. However, we are only with a few developers, and these things take time unfortunately.

The bug that you identified should be addressed of course, but it is straightforward to work around it for the moment I think.

In igraph/rigraph/issues I do not see any feedback like “bug”, “confirmed”, or “todo” as in igraph/igraph/. So the status of the issues is somewhat confused. If that is resolved I could process all the outstanding issues and see whether I can reproduce in my environment (W10).

Yes, the triage of open issues in rigraph is something that should still be done. We started with a backlog of issues for the C core, because they were most pressing.

Some issues may already be solved in the latest development version, which relies on a recent version of the C core. You can install this from the dev branch (which is the default branch), follow the instructions in In short, after installation of the necessary packages, do:

system("git submodule init")
system("git submodule update")

However, I have not tried to compile R packages under Windows, so it might be a bit more involved on Windows.

If you want to contribute, you can check whether some of the open issues are still a problem in the latest development version, if not, you can report it and we can close the issue.