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

REPL 0.6 completely broken on Ubuntu Lucid #5784

Closed
ms-tg opened this issue Apr 8, 2013 · 0 comments
Closed

REPL 0.6 completely broken on Ubuntu Lucid #5784

ms-tg opened this issue Apr 8, 2013 · 0 comments

Comments

@ms-tg
Copy link

ms-tg commented Apr 8, 2013

Installed Rust 0.6 using Kevin Catu's PPA. REPL crashes on simplest inputs:

$ rust sketch
WARNING: The Rust REPL is experimental and may be
unstable. If you encounter problems, please use the
compiler instead.
rusti> let a = 1;
<anon>:34:4: 34:7 warning: unused variable: `a`
<anon>:34 let a = 1;
              ^~~
rusti: /build/buildd/rust-0.6/src/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp:221: void llvm::RuntimeDyldELF::resolveX86_64Relocation(uint8_t*, uint64_t, uint64_t, uint32_t, int64_t): Assertion `RealOffset <= (2147483647) && RealOffset >= (-2147483647-1)' failed.
bors added a commit that referenced this issue May 14, 2013
These few commits address a few existing issues:

* #5469 - adding regression tests for `rusti`. This adds unit tests to the `rusti.rc` file (which needed some reorganization of the Makefile, see the first commit message). These are super-simple right now, and sadly can't test the output of the tests. I worked for a bit on making a compiletest version of the rusti tests, but I ended up hitting something which blocked me, although I've forgotten it by this point.
* #5937 - regression test added, and it's fixed
* #5803 - just doesn't appear to happen any more
* #5784 - it's no longer broken, and it no longer spits out warnings about unused variables.

I also did some investigation into #5774, and you may want to read the comment I left on the bug. The gist of the situation is that C++ exceptions across JIT code don't look like they're working, even though they [should be working](https://github.com/mozilla/rust/blob/3aa1122ec25d15a2a73a295f8298ad9c38b09a10/src/rustllvm/RustWrapper.cpp#L387). If anyone has any insight on this, that would be awesome!
flip1995 added a commit to flip1995/rust that referenced this issue Jul 14, 2020
Fix out of bounds access by checking length equality BEFORE accessing by index.

Fixes rust-lang#5780

changelog: fix out of bounds access in unnested_or_patterns lint.

Edit: I did not bother reducing a testcase from `librustc_typeck` crate but I can confirm that with the change the crash no longer occurs.
flip1995 pushed a commit to flip1995/rust that referenced this issue Jul 14, 2020
Rollup of 5 pull requests

Successful merges:

 - rust-lang#5443 (Some accuracy lints for floating point operations)
 - rust-lang#5752 (Move range_minus_one to pedantic)
 - rust-lang#5756 (unnecessary_sort_by: avoid linting if key borrows)
 - rust-lang#5784 (Fix out of bounds access by checking length equality BEFORE accessing by index.)
 - rust-lang#5786 (fix phrase in new_lint issue template)

Failed merges:

r? @ghost

changelog: rollup
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