Skip to content

Argument / Argument Source type and availability checking #101

@kaoudis

Description

@kaoudis

In patches and contracts, one can specify arguments and argument sources of different varieties, i.e., variable, symbol, return value, and so on. In the case the patch writer references something that doesn't exist, or using the wrong type

  • example 1: usb_device_t * validates because we only check it is a pointer, we don't check any struct members, and we don't need type information for it, but it's there and should be usb_device *
  • example 2: it's possible to mistype an argument or argument source and create a patch that will apply to the program in question, but that could cause the program to segfault or just not work well, eg accidentally widening or narrowing of type, mis-stating array size, using a pointer or reference where the other one should be used

A kind of validation we could do would be some form of patch validation in situ with the rest of the program we are patching, maybe statically.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions