Skip to content

[checked-c-convert] Minor fixes to the checked-c-convert #679

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

Merged
merged 185 commits into from
Sep 25, 2019

Conversation

Machiry
Copy link
Member

@Machiry Machiry commented Sep 4, 2019

This pull request fixes various issues related to checked-c-convert.

Specifically, the following issues have been fixed:

Although, the number of commits looks more (because of rebasing our branch with master), the effective changes are very less.

Machiry and others added 19 commits August 11, 2019 02:08
In certain cases, the file/line/column information stored in the
PersistentSourceLocation class is not enough to uniquely disambiguate
definitions from one another.  To support these cases, this commit
adds a "reproducible" AST node identifier as a distinguishing feature.

According to the "Clang Front End for LLVM Developers' List":

    "If you want something that's more stable across runs (pointers
    would obviously change every time), you can have a look at the
    getID() method in various AST nodes, which produces an integer
    that doesn't change across runs but does change across host
    machines."

Which should work fine for our purposes.

This fixes #18.
This brings dev-fixes up-to-date with dev in preparation for
submitting a new PR to Microsoft.
Brings upstream changes into the PLUM fork.
Bring in updates from Microsoft to allow for a clean PR.
This should address the regression reported by @Machiry and discovered
by @hasantouma, and resolve #18.
Brings changes from Microsoft's main branch into our development
branch.
Through experimentation, we've discovered that AST IDs provided by
Clang's getID() do not behave as documented.  This effectively
removes commits ad94795 and 1ff694a.
Brings changes from our main development branch to prepare for a PR.
Copy link
Member

@dtarditi dtarditi left a comment

Choose a reason for hiding this comment

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

I have some suggestions for improving the code.

Copy link
Member

@dtarditi dtarditi left a comment

Choose a reason for hiding this comment

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

Looks good. Thanks!

@dtarditi dtarditi merged commit ba778c3 into checkedc:master Sep 25, 2019
mgrang pushed a commit that referenced this pull request Sep 26, 2019
Cherry-picked from commit ba778c3
Author: Machiry Aravind Kumar <[email protected]>
Commit: David Tarditi <[email protected]>

    [checked-c-convert] Minor fixes to the checked-c-convert (#679)

    - Add knowledge of calloc and realloc as allocator functions.
    - Add initializers for variables retyped as checked pointers.
    - Add initializers for structure variables containing members that have been retyped as checked pointers.
    - Avoid deletion of variable arguments.
mgrang pushed a commit that referenced this pull request Sep 27, 2019
Cherry-picked from commit ba778c3

    - Add knowledge of calloc and realloc as allocator functions.
    - Add initializers for variables retyped as checked pointers.
    - Add initializers for structure variables containing members that have been retyped as checked pointers.
    - Avoid deletion of variable arguments.
mgrang pushed a commit that referenced this pull request Sep 27, 2019
Cherry-picked from commit ba778c3

    - Add knowledge of calloc and realloc as allocator functions.
    - Add initializers for variables retyped as checked pointers.
    - Add initializers for structure variables containing members that have been retyped as checked pointers.
    - Avoid deletion of variable arguments.
@rchyena rchyena deleted the dev-fixes branch September 30, 2019 05:59
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.

3 participants