Submodule ast.conversion provides classes for representing to C's "implicit conversions". These include numeric conversions which convert, for example, a float to a double, the conversion of a an array to a pointer to element 0 of the array, the conversion of a function name to a pointer to that function, and so on.

  • Class
    Represents a conversion from any arithmetic type to another arithmetic type (not just the "usual arithmetic conversions").
    An implicit conversion from array type to pointer type.
    An implicit conversion from one pointer type to another pointer type in the case where either the two types are compatible or the second type is obtained by adding a qualifier to the type of thing pointed to.
    Conversion from one structure or union type to a compatible version of that type.
    A conversion is an implicit operation that may change a value and/or the type of the value.
    Kind of conversions
    A factory for producing instances of Conversion.
    Factory class providing static method to produce a ConversionFactory.
    An implicit conversion of a function type T to the type pointer-to-T.
    some sv-comp examples are using conversions between pointers and integers.
    An Lvalue conversion, i.e., a conversion from the type of an lvalue to the type of the value obtained by evaluating that lvalue.
    A MemConversion converts an expression of pointer or set-of pointer type to $mem type.
    Conversion of a null pointer constant to any pointer type.
    some sv-comp examples are using conversions between pointers and integers.
    Any pointer type can be explicitly cast to the boolean type: if the pointer is NULL, it maps to the boolean value false, else it maps to true.
    Converts a regular range to a (one-dimension) domain.
    A conversion between the type pointer-to-void and a pointer to an object type.