Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

display problem with long function #29

Open
Jutho opened this issue Aug 22, 2018 · 5 comments
Open

display problem with long function #29

Jutho opened this issue Aug 22, 2018 · 5 comments

Comments

@Jutho
Copy link

Jutho commented Aug 22, 2018

Just testing Rebugger.jl for the first time; looks great. I have encountered two bugs so far. This one is about a long function, which does not fit within my terminal window. When scrolling upwards to see the beginning of the function, something goes wrong and it seems that the part that was cut off from the top is now repeated many times. I count about 28 rebug> prompts together with that part of the function that was not visible at first, when scrolling upwards. Only then are the pink and blue lines shown.

@timholy
Copy link
Owner

timholy commented Aug 22, 2018

Is the 2nd bug the keybinding one resolved by Matt's comment?

@Jutho
Copy link
Author

Jutho commented Aug 22, 2018

No it's something where further stepping in doesn't work, but I find it hard to extract a minimal test case (its some private rather large code); which is why I haven't filed it. I think it has to do with the following construction

A[map(x->f(x), something)]

which seems to be expanded to

A[map(x->begin
              f(x)
            end, something)]

and then at some point, I saw an error (but I don't know how I triggered that), about the fact that begin in an indexing expression is no longer allowed / deprecated.

@timholy
Copy link
Owner

timholy commented Aug 22, 2018

Not sure if this is the same thing, but just this morning I encountered a stepping problem that turned out to result from a method being re-evaluated that had a signature something like foo(x::AbstractVector{<:Real}). The problem is that this signature type has a gensym in it, and the 2nd time you evaluate it you get a different gensym so the sigtmap lookup fails. Sadly, Core.eval(mod, expr) doesn't return the method(s), so it's going to take some thinking to figure out how to resolve this.

@timholy
Copy link
Owner

timholy commented Aug 22, 2018

BTW if you want to help debug stuff, the shiny new logging facility in Revise may help. Again just this morning I discovered it's not compatible with @testsets, so I'm going to have to rewrite it a bit I'm afraid, but as long as you know about the limitation then it doesn't hurt to play with it and see whether you can catch Revise in the act of messing up.

@Jutho
Copy link
Author

Jutho commented Aug 22, 2018

Not sure, I don't have any explicit SomeType{<:SomeAbstractType} construction in my function signature. I'll try the logging facility when I have some time, and file an issue if I figure out the bug more concretely.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants