Skip to content

Using two groups at the same time #35

@jptrzy

Description

@jptrzy

I don't get it, why doesn't it work 🤔

Code:

...
{
    var group = world.group(.{ Position, Orbiting }, .{}, .{});
    var group_iter = group.iterator(struct { pos: *Position, orb: *Orbiting });

    while (group_iter.next()) |e| {
        ...
    }
}

{
    var group = world.group(.{ Position, Renderer }, .{}, .{});
    var group_iter = group.iterator(struct { pos: *Position, ren: *Renderer });

    while (group_iter.next()) |e| {
        ...
    }
}
...

Error Logs:

thread 258336 panic: reached unreachable code
/nix/store/ypzkr8d6sff2vcdjadcbblqdwjf1ia72-zig-0.12.0-dev.1+a327d8b99/lib/std/debug.zig:343:14: 0x342e6c in assert (z-space)
    if (!ok) unreachable; // assertion failure
             ^
/home/jp3/.local/src/z-space/libs/zig-ecs/src/ecs/registry.zig:530:33: 0x344d73 in group__anon_6485 (z-space)
                std.debug.assert(check);
                                ^
/home/jp3/.local/src/z-space/src/main.zig:74:36: 0x3424b4 in main (z-space)
            var group = world.group(.{ Position, Renderer }, .{}, .{});
                                   ^
/nix/store/ypzkr8d6sff2vcdjadcbblqdwjf1ia72-zig-0.12.0-dev.1+a327d8b99/lib/std/start.zig:564:22: 0x341dc9 in main (z-space)
            root.main();
                     ^
???:?:?: 0x7ffff7d1facd in ??? (libc.so.6)
Unwind information for `libc.so.6:0x7ffff7d1facd` was not available, trace may be incomplete

PS. Did you thought about adding better error messages - it would have been really helpful 😄

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions