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

Implement errexit option #212

Merged
merged 13 commits into from
Nov 8, 2022
Merged

Implement errexit option #212

merged 13 commits into from
Nov 8, 2022

Conversation

magicant
Copy link
Owner

@magicant magicant commented Nov 3, 2022

  • Implement Env::apply_errexit
  • Push Frame::Condition in if/while/until conditions
  • Push Frame::Condition in negated command
  • Push Frame::Condition in and-or lists
  • Exit on simple command returning non-zero exit status
  • Exit on subshell command returning non-zero exit status
  • Exit on function definition command returning non-zero exit status
  • Exit on redirection error in compound command

  • Exit on expansion error in for loop word → not needed because expansion error exits the shell by default implemented in another PR
  • Exit on assignment error in for loop variable → not needed because assignment error exits the shell by default implemented in another PR
  • Exit on expansion error in case command word or pattern → not needed because expansion error exits the shell by default implemented in another PR
  • Exit on double bracket command returning non-zero exit status → not implemented in this PR because the double bracket command itself is not yet implemented

@magicant magicant self-assigned this Nov 3, 2022
@magicant magicant mentioned this pull request Nov 3, 2022
16 tasks
@magicant magicant marked this pull request as ready for review November 8, 2022 15:46
@magicant magicant merged commit 97fb85c into master Nov 8, 2022
@magicant magicant deleted the errexit branch November 8, 2022 16:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

None yet

1 participant