Skip to content

Clean up runtime exports #1683

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

Closed
brson opened this issue Jan 27, 2012 · 10 comments
Closed

Clean up runtime exports #1683

brson opened this issue Jan 27, 2012 · 10 comments
Labels
A-runtime Area: std's runtime and "pre-main" init for handling backtraces, unwinds, stack overflows C-cleanup Category: PRs that clean code up or issues documenting cleanup. E-easy Call for participation: Easy difficulty. Experience needed to fix: Not much. Good first issue.

Comments

@brson
Copy link
Contributor

brson commented Jan 27, 2012

Right now the interface presented by the runtime is very sloppy. There should basically be three categories of function:

@graydon
Copy link
Contributor

graydon commented Feb 16, 2012

Agreed. I'd also vaguely like to rename the term upcall to something more obvious.

@brson
Copy link
Contributor Author

brson commented Feb 16, 2012

While we're changing upcall let's also put it into the rust_ namespace. What word do you suggest to replace upcall?

@ghost ghost assigned brson Feb 16, 2012
@jamorton
Copy link
Contributor

jamorton commented Apr 2, 2012

has a word been chosen yet? I could clean this up

@brson
Copy link
Contributor Author

brson commented Apr 2, 2012

No, a word has not been chosen. In the interest of making a nice embedding API I think the naming we should use is:

  • rust_* - the public embedding API - there are no existing functions in this namespace
  • rust_builtin_* - the API used by core - this is the majority of the existing functions
  • rust_dbg_* - debug / test APIs
  • rust_upcall_* - or whatever the new word for 'upcall' is

@graydon what's the new word for 'upcall'?

@brson
Copy link
Contributor Author

brson commented Apr 2, 2012

Though builtin is a pretty long word, maybe there's a shorter synonym

@bblum
Copy link
Contributor

bblum commented Jul 3, 2013

This only affects libs, so is not a backwards-compatibility issue. Renominating for feature-complete.

Most of this will become irrelevant with the new runtime, and the rust runtime's internal interface to C library functions can probably be unstandardized. But we might still want to think about the rust interface to the rest of the stdlib.

@graydon
Copy link
Contributor

graydon commented Jul 18, 2013

just a bug, removing milestone/nomination.

@graydon
Copy link
Contributor

graydon commented Jul 18, 2013

See also #3922

@catamorphism
Copy link
Contributor

Could somebody ( @brson or @bblum ?) summarize what remains to be done here?

@thestinger
Copy link
Contributor

The old runtime support is being removed, so cleaning it up isn't necessary anymore.

celinval added a commit to celinval/rust-dev that referenced this issue Jun 4, 2024
)

Add a new module reachability which implements the reachability algorithm. Add the end to end logic for the reachability starting from all the harnesses in the target crate.

## Resolved issues:

Resolves rust-lang#1672

## Related RFC:

rust-lang#1588

## Call-outs:

    We still need to build the custom sysroot in order to fix the missing functions issue.
    I added a mechanism to run the regression tests using the MIR linker inside compiletest.
    I ran the regression manually (with the mir_linker enabled) the only tests that didn't pass were:
        cargo-kani/asm/global_error/doesnt_call_crate_with_global_asm.expected: The global assembly is out of the scope so it doesn't get processed. If we want to keep that behavior, we will have to inspect all items manually.
        cargo-kani/cargo-tests-dir/expected: This might be a legit issue that I need to fix on kani-driver logic.
        cargo-ui/dry-run/expected: Not an issue (arguments to the compiler changes).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-runtime Area: std's runtime and "pre-main" init for handling backtraces, unwinds, stack overflows C-cleanup Category: PRs that clean code up or issues documenting cleanup. E-easy Call for participation: Easy difficulty. Experience needed to fix: Not much. Good first issue.
Projects
None yet
Development

No branches or pull requests

6 participants