Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

Regex unknown error msvcrt!_iob under Qt 4.8 built with latest mingw-builds [Solved]



  • I have just built Qt 4.8 with the latest mingw-builds, all my c++ projects works fine, except this line: regex r("\\d+");
    which works fine at my friend PC with Qt 4.8 but debugged with msvc2010.
    If I'm writing this line: regex r;
    it's doesnt break on this line, but then any thing I'm trying to do with "r" leading to the same unknown error result.

    If I look at Qt debug window on the table of (Level,Function,File,Line), I can see:

    @ 0 msvcrt!abort C:\Windows\system32\msvcrt.dll 0x7fefd9c537c
    1 libstdc++-6!_ZN9__gnu_cxx27__verbose_terminate_handlerEv C:\MinGW\bin\libstdc++-6.dll 0x6fc5cc82
    2 msvcrt!_iob C:\Windows\system32\msvcrt.dll 0x7fefda12ae0
    3 ?? 0x22f530
    4 ?? 0x22f530
    5 ?? 0x22f962e8
    6 msvcrt!__pioinfo C:\Windows\system32\msvcrt.dll 0x7fefd993fc0
    7 ?? 0x22f5f0
    8 ?? 0xffffffff
    9 ?? 0x22e37900
    10 ?? 0x1
    11 ?? 0x22f6d8
    12 ?? 0x22ea9610
    13 libstdc++-6!__dynamic_cast C:\MinGW\bin\libstdc++-6.dll 0x6fce1190
    14 ?? 0x22f5b0
    15 libstdc++-6!_ZN9__gnu_cxx27__verbose_terminate_handlerEv C:\MinGW\bin\libstdc++-6.dll 0x6fc5cc2e
    16 ?? 0x22a8c0
    17 ?? 0x22f750
    18 ?? 0x22f669e0
    19 ?? 0x202
    20 ?? @

    Thanks all!

    edit (credit to @Lol4t0 - from stackoverflow):
    @Lol4t0:
    std::regex is part of c++11 standard library.

    Mingw must haven't included support of regular expressions yet, while VS 2010 supports them.

    However, you can use QRegExp instead.

    @my response:
    I was pretty sure mingw-builds project have includes most of the c++11, but apparently not. I changed my code to work with QRegExp, and it's even cleaner and simple then before.


Log in to reply