Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
L
lambda-rust
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 3
    • Issues 3
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 0
    • Merge Requests 0
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Analytics
    • Analytics
    • CI / CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • Iris
  • lambda-rust
  • Merge Requests
  • !8

Merged
Opened Oct 30, 2017 by Ralf Jung@jungOwner

Add poison

  • Overview 4
  • Commits 1
  • Changes 21

Add a new poison literal that is used for uninitialized memory. Make sure that poison, when used in any interesting way, triggers UB -- the only think you may do with poison is load it from memory, and store it back. This models the PLDI'17 LLVM semantics for uninitialized memory pretty faithfully.

Also, get rid of unit because we can now use poison as the "return value" of things like storing, making sure that nothing can ever depend on those values.

Actually it turns out that the old unit and the new poison are exactly the same, so effectively this is just a rename + making allocation more deterministic.

Assignee
Assign to
Reviewer
Request review from
None
Milestone
None
Assign milestone
Time tracking
Reference: iris/lambda-rust!8
Source branch: ralf/poison

Revert this merge request

This will create a new commit in order to revert the existing changes.

Switch branch
Cancel
A new branch will be created in your fork and a new merge request will be started.

Cherry-pick this merge request

Switch branch
Cancel
A new branch will be created in your fork and a new merge request will be started.