Skip to content

result::get() causes "Entry Point Not Found" on Windows #4320

Closed
@mrhandle

Description

@mrhandle

Configuration: Using Rust 0.5, Dec 21 2012 Windows release [.exe] on Windows 7
Problem: Having result::get in the code somehow generates a binary that has missing/invalid entry point. Below is the content of the error box in Windows 7 (tip: you can copy error dialogs in Windows with Ctrl+C).

---------------------------
try1.exe - Entry Point Not Found
---------------------------
The procedure entry point _ZN4repr14__extensions__9meth_519610visit_bool15_af4de08865eac43_05E could not be located in the dynamic link library core-c3ca5d77d81b46c1-0.5.dll. 
---------------------------
OK   
---------------------------

The code that causes the issue:

/** Pause the program before exit
 */
fn pause() {
    io::println("Press enter to continue...");

    let reader = io::stdin() as io::ReaderUtil;
    reader.read_line();
}

fn main() {
    // Handle the arguments
    let args = os::args();

    if args.len() != 2 {
        io::println("Error: give only the dictionary file!");
        pause();
        os::set_exit_status(1);
        return;
    }

    // Print the dictionary
    let path = path::Path(args[1]);
    let res = io::file_reader(&path);
    let reader = result::get(&res); // <---- THE PROBLEM LINE

    while !reader.eof() {
        io::println((reader as io::ReaderUtil).read_line());
    }

    io::println("DONE!");
    pause();
}

Thanks for all your hard work, and happy new year 🎉

Metadata

Metadata

Assignees

No one assigned

    Labels

    O-windowsOperating system: Windows

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions