Skip to content

Conversation

john-h-kastner
Copy link
Collaborator

Three miscellaneous changes made while working on the root cause of wildness analysis.

  1. Calls to allocater functions will now generate a single atom. Previously, two atoms were generated to act as the parameter and argument atoms for the function, even though these function are handled differently than other function, and don't need the separate parameter atom.
  2. The function ConstraintVariable::constrainToWild now only adds a constraint on the outer pointer level. The inner pointer levels are implicitly constrained by implication constraints.
  3. A bug is fixed in multi-declaration rewriting that was caused by undefined ordering of a set of Decl*.

The inner pointers are constrained by implication constraints. This
helps to improve the root cause analysis.
The set of declarations in a multi-decl was not explicitly ordered by
position in multi-declaration. This meant declaration could sometimes
be rewritten out of order, potentially crashing 3c.
Copy link
Member

@mwhicks1 mwhicks1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good stuff.

@john-h-kastner john-h-kastner merged commit 6ec85bc into master Oct 15, 2020
@john-h-kastner john-h-kastner deleted the MiscRefactorings branch March 26, 2021 03:05
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

Successfully merging this pull request may close these issues.

2 participants