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.