github2-x
2018-11-29 13:36:24

github2-x
2018-11-29 14:28:24

github2-x
2018-11-29 17:41:50

github2-x
2018-11-29 17:49:59

github2-x
2018-11-29 19:57:42

github2-x
2018-11-29 20:23:30

samth
2018-11-29 22:00:19

@cadr things did not segfault for me


cadr
2018-11-29 22:02:13

@samth yeah I’m able to compile too, it was because of a local change I made, now it’s working


samth
2018-11-29 22:02:20

great


samth
2018-11-29 22:02:30

did you learn anything more about the missing call-with-input-file?


github2-x
2018-11-29 22:16:57

github2-x
2018-11-30 02:18:09

samth
2018-11-30 02:18:32

@cadr I think I found the bug


samth
2018-11-30 02:18:37

or at least a bug


cadr
2018-11-30 02:21:36

I take it that we’re not sure if it’s the same issue


cadr
2018-11-30 02:22:15

But since it’s a small one I’ll jump on it right away and see if it’ll solve the main issue


samth
2018-11-30 02:26:39

well i found it from looking at a log of the error


samth
2018-11-30 02:26:48

but i don’t know if it will fix everything


samth
2018-11-30 02:27:03

the previous similar fix didn’t fix everything but did fix some things


samth
2018-11-30 02:27:20

are there other places where there might be a correlated that we should remove?


samth
2018-11-30 02:27:31

or places where we should check for a symbol?


cadr
2018-11-30 02:30:38

I’m not sure, but I certainly wasn’t concerned about correlateds before as much as I should’ve been, I have a couple of places in mind in the compile-linklet implementation, I’ll check it, working on that module now


samth
2018-11-30 02:31:23

I think this code is the problem:


samth
2018-11-30 02:31:26
                if isinstance(exp, values.W_WrappedConsProper):
                    internal_name = exp.car() # W_Symbol
                    external_name = exp.cdr().car() # W_Symbol
                    exports[internal_name] = external_name
                else:
                    exports[exp] = exp

cadr
2018-11-30 02:31:32

This seems to be having a symbol wrapped in a correlated in an export


cadr
2018-11-30 02:31:43

sorry, import


samth
2018-11-30 02:31:45

and that those things with the comments should actually check


samth
2018-11-30 02:32:05

as well as the else clause


cadr
2018-11-30 02:32:32

Yeah they assume that it’s a symbol, there are a couple of places like this, I’m fixing them


samth
2018-11-30 02:32:43

great


samth
2018-11-30 02:35:57

also put some checks in W_Linklet.init that the inputs are the right sort of thing


cadr
2018-11-30 02:36:52

What do you mean? To catch these kinds of errors?


samth
2018-11-30 02:36:52

also why isn’t export an immutable list?


samth
2018-11-30 02:36:57

yes


samth
2018-11-30 02:37:07

and also so that RPython knows that they’re all symbols


samth
2018-11-30 02:37:34

how are renamed imports/exports represented in W_Linklet?


cadr
2018-11-30 02:38:44

It isn’t an immutable list because we’re setting the target instance’s exports in the instantiation


samth
2018-11-30 02:39:41

wait what


samth
2018-11-30 02:40:00

the target is an instance


samth
2018-11-30 02:40:03

not a linklet


cadr
2018-11-30 02:40:52

Oh you’re talking about linklets’ exports, I thought they were immutable


samth
2018-11-30 02:41:16

the field is immutable but the elements are not listed as immutable


samth
2018-11-30 02:41:29

which they should be


samth
2018-11-30 02:41:46

but also, how is renaming represented for exports?


cadr
2018-11-30 02:46:45

wow I just realized how awful that representation is, it is a list of dictionaries, every export is a dictionary of one element where the key is the external symbol and the value is the internal one, I’m not sure why I didn’t use just one dictionary for that, I’ll certainly fix that soon


cadr
2018-11-30 02:48:24

No hold on I did use only one dictionary, my old comment confused me


cadr
2018-11-30 03:10:43

@samth Fixing it makes your example module work, compiling now to see if it fixes more


samth
2018-11-30 03:10:57

great


samth
2018-11-30 03:28:36

@cadr please push your fix tonight so I can use it tomorrow morning


cadr
2018-11-30 03:32:25

@samth Sure, I’m waiting for it to compile now, I’ll push it as soon as it’s done


github2-x
2018-11-30 05:52:30

github2-x
2018-11-30 06:01:29