Skip to content

About the mistranslationΒ #1509

@King-play

Description

@King-play

Original C Code:

int main(void) {
    assert(check_add());    // once 
    assert(check_sub());    // once
    return 0;
}

C2rust Output:

unsafe fn main_0() -> core::ffi::c_int {
    // first
    if check_add() {} else {
        __assert_fail(...);
    }
    
    // πŸ”΄ second !!!
    'c_1569: {
        if check_add() {} else {
            __assert_fail(...);
        }
    };
    
    // first
    if check_sub() {} else {
        __assert_fail(...);
    }
    
    // πŸ”΄ second !!!
    'c_1529: {
        if check_sub() {} else {
            __assert_fail(...);
        }
    };
    
    return 0 as core::ffi::c_int;
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingmistranslationTranslating a well-behaved program changes its behavior

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions