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

Add "landing pads" to the glossary #707

Open
mark-i-m opened this issue May 19, 2020 · 8 comments
Open

Add "landing pads" to the glossary #707

mark-i-m opened this issue May 19, 2020 · 8 comments
Labels
A-glossary Area: glossary C-enhancement Category: enhancement E-medium Difficulty: might require some prior knowledge or code reading T-compiler Relevant to compiler team T-libs Relevant to libs team

Comments

@mark-i-m
Copy link
Member

No description provided.

@mark-i-m mark-i-m mentioned this issue May 19, 2020
27 tasks
@camelid
Copy link
Member

camelid commented Jan 4, 2021

Is a "landing pad" a link to the section that discusses the term?

@igaray
Copy link
Member

igaray commented Jan 4, 2021

I was looking at this the other day, my interpretation of the issue is that it is just adding to the glossary a general definition of landing pad and contextualize it somewhat for the rustc.

I was thinking of something like "A section of user code intended to catch, or otherwise clean up after, an exception."

@jyn514
Copy link
Member

jyn514 commented Jan 4, 2021

https://llvm.org/docs/ExceptionHandling.html#overview

@tshepang
Copy link
Member

Here's my attempt...

A section of code that gets executed during unwinding to do cleanup operations (like invoking destructors and freeing memory).

@tshepang
Copy link
Member

It's also tempting to use the term exception handler, but I don't know how to explain that since Rust doesn't have exceptions.

@LeSeulArtichaut
Copy link
Contributor

"Panic handler" maybe?

@jyn514
Copy link
Member

jyn514 commented Jan 30, 2021

"Panic handler" maybe?

That's ambiguous with https://doc.rust-lang.org/nomicon/panic-handler.html IMO. This is more similar to a catch block, there are landing pads at the end of every scope.

@rylev
Copy link
Member

rylev commented Feb 1, 2021

Since landing pads don't really have a analogy to any language feature but are instead used in the implementation of stack unwinding (which are in turn used by exceptions in C++ and panics in Rust), I don't think we should use "panic handler" or "exception handler". @tshepang's attempt is a good start.

@jieyouxu jieyouxu added E-medium Difficulty: might require some prior knowledge or code reading C-enhancement Category: enhancement T-compiler Relevant to compiler team T-libs Relevant to libs team A-glossary Area: glossary labels Nov 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-glossary Area: glossary C-enhancement Category: enhancement E-medium Difficulty: might require some prior knowledge or code reading T-compiler Relevant to compiler team T-libs Relevant to libs team
Projects
None yet
Development

No branches or pull requests

8 participants