Skip to content
This repository has been archived by the owner on Sep 12, 2024. It is now read-only.

[BUG] mypy node linking isn't done correctly in some cases #281

Open
mgtm98 opened this issue Mar 9, 2024 · 0 comments
Open

[BUG] mypy node linking isn't done correctly in some cases #281

mgtm98 opened this issue Mar 9, 2024 · 0 comments
Assignees
Labels
bug fix Something isn't working

Comments

@mgtm98
Copy link
Collaborator

mgtm98 commented Mar 9, 2024

Describe the bug
This is a general issue that we can keep track of all mypy node linking errors to all jac nodes.

Issue1

import:py pygame;

can c() -> int {
    sprite = pygame.Surface;
}
FuseTypeInfo:: jac node "8:21 - 8:28::Name::Surface" doesn't have mypy node associated to it

Issue2

import:py pygame;

obj Spritesheet {
    can init(file: str);
    can get_sprite(x: int, y: int, width: int, height: int) -> pygame.Surface;
}

:obj:Spritesheet:can:init
(file: str) {
    self.sheet = pygame.image.load(file).convert();
}

:obj:Spritesheet:can:get_sprite
(x: int, y: int, width: int, height: int) {
    sprite = pygame.Surface([width, height]);
    sprite.blit(self.sheet, (0, 0), (x, y, width, height));
    sprite.set_colorkey(BLACK);
    return sprite;
}
FuseTypeInfo:: jac node "3:1 - 6:2::Architype" has multiple mypy nodes associated to it
FuseTypeInfo:: jac node "3:5 - 3:16::Name::Spritesheet" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "4:9 - 4:13::Name::init" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "4:14 - 4:23::ParamVar::None" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "4:14 - 4:18::Name::file" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "8:1 - 11:2::AbilityDef" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "8:1 - 8:17::ArchRef" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "8:6 - 8:17::Name::Spritesheet" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "8:17 - 8:26::ArchRef" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "8:22 - 8:26::Name::init" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "9:2 - 9:11::ParamVar::None" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "9:2 - 9:6::Name::file" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "10:10 - 10:15::Name::sheet" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "10:25 - 10:30::Name::image" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "10:31 - 10:35::Name::load" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "10:42 - 10:49::Name::convert" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "5:9 - 5:19::Name::get_sprite" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "5:20 - 5:26::ParamVar::None" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "5:20 - 5:21::Name::x" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "5:28 - 5:34::ParamVar::None" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "5:28 - 5:29::Name::y" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "5:36 - 5:46::ParamVar::None" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "5:36 - 5:41::Name::width" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "5:48 - 5:59::ParamVar::None" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "5:48 - 5:54::Name::height" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "5:64 - 5:70::Name::pygame" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "5:71 - 5:78::Name::Surface" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "13:1 - 19:2::AbilityDef" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "13:1 - 13:17::ArchRef" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "13:6 - 13:17::Name::Spritesheet" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "13:17 - 13:32::ArchRef" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "13:22 - 13:32::Name::get_sprite" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "14:2 - 14:8::ParamVar::None" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "14:2 - 14:3::Name::x" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "14:10 - 14:16::ParamVar::None" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "14:10 - 14:11::Name::y" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "14:18 - 14:28::ParamVar::None" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "14:18 - 14:23::Name::width" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "14:30 - 14:41::ParamVar::None" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "14:30 - 14:36::Name::height" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "15:21 - 15:28::Name::Surface" doesn't have mypy node associated to it
FuseTypeInfo:: Getting type not supported in <class 'jaclang.compiler.absyntree.ListVal'>
FuseTypeInfo:: jac node "16:12 - 16:16::Name::blit" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "16:22 - 16:27::Name::sheet" doesn't have mypy node associated to it
FuseTypeInfo:: Getting type not supported in <class 'jaclang.compiler.absyntree.TupleVal'>
FuseTypeInfo:: Getting type not supported in <class 'jaclang.compiler.absyntree.TupleVal'>
FuseTypeInfo:: jac node "17:12 - 17:24::Name::set_colorkey" doesn't have mypy node associated to it
FuseTypeInfo:: "17:25 - 17:30::Name" mypy node isn't supported <class 'NoneType'>
FuseTypeInfo:: jac node "8:1 - 11:2::AbilityDef" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "8:1 - 8:17::ArchRef" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "8:6 - 8:17::Name::Spritesheet" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "8:17 - 8:26::ArchRef" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "8:22 - 8:26::Name::init" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "9:2 - 9:11::ParamVar::None" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "9:2 - 9:6::Name::file" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "10:10 - 10:15::Name::sheet" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "10:25 - 10:30::Name::image" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "10:31 - 10:35::Name::load" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "10:42 - 10:49::Name::convert" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "13:1 - 19:2::AbilityDef" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "13:1 - 13:17::ArchRef" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "13:6 - 13:17::Name::Spritesheet" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "13:17 - 13:32::ArchRef" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "13:22 - 13:32::Name::get_sprite" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "14:2 - 14:8::ParamVar::None" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "14:2 - 14:3::Name::x" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "14:10 - 14:16::ParamVar::None" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "14:10 - 14:11::Name::y" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "14:18 - 14:28::ParamVar::None" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "14:18 - 14:23::Name::width" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "14:30 - 14:41::ParamVar::None" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "14:30 - 14:36::Name::height" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "15:21 - 15:28::Name::Surface" doesn't have mypy node associated to it
FuseTypeInfo:: Getting type not supported in <class 'jaclang.compiler.absyntree.ListVal'>
FuseTypeInfo:: jac node "16:12 - 16:16::Name::blit" doesn't have mypy node associated to it
FuseTypeInfo:: jac node "16:22 - 16:27::Name::sheet" doesn't have mypy node associated to it
FuseTypeInfo:: Getting type not supported in <class 'jaclang.compiler.absyntree.TupleVal'>
FuseTypeInfo:: Getting type not supported in <class 'jaclang.compiler.absyntree.TupleVal'>
FuseTypeInfo:: jac node "17:12 - 17:24::Name::set_colorkey" doesn't have mypy node associated to it
FuseTypeInfo:: "17:25 - 17:30::Name" mypy node isn't supported <class 'NoneType'>

To Reproduce

  1. Create a jac file with the attached code
  2. add FuseTypeInfoDebug=1 as an environment variable
  3. jac tool ir ast examples/micro/type_info.jac
@mgtm98 mgtm98 added the bug fix Something isn't working label Mar 9, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug fix Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants