Desbordamiento de pila de expresiones regulares de C ++ 11 / VS2012

Estoy en el proceso de convertir un código antiguo de expresión regular de Boost a C ++ 11, y encontré un problema con uno de mis casos de prueba. Aquí hay un escenario que causa una excepción de desbordamiento de pila usando std :: regex, pero funcionó bien con boost :: regex. No he cambiado el patrón de expresión regular, y he verificado que el patrón es lo que quiero. Parece que este fragmento de entrada de cadena particular está causando el desbordamiento de pila. Usando VS2012, compilación de depuración x64:

std::regex regx( "(^|\\})(([^\\{:])+:)+([^\\{]*\\{)" );

    const std::string testinput = " COLOR: #000; BACKGROUND-COLOR: #FFF; FONT-FAMILY: VERDANA, ARIAL, HELVETICA, SANS-SERIF; BACKGROUND:URL(URL(___FOO___)); BACKGROUND-2:URL(URL(___FOO___)); BORDER: 0 0 0 0; BORDER-2: 0 0 0; BORDER-3: 0 0; BORDER-4: 0PX; BORDER-5: 0.6; FILTER:PROGID:DXIMAGETRANSFORM.MICROSOFT.ALPHA(OPACITY=100); } ";
    std::smatch what;
    // this next line causes a stack overflow
    std::regex_search( testinput.cbegin(), testinput.cend(), what, regx );  

Al observar la pila de llamadas después de la excepción, parece haber algún tipo de recursión infinita en la implementación de expresiones regulares. Actualmente no tengo GCC para probar esto con. ¿Qué estoy haciendo mal?

Actualización: después de las sugerencias a continuación, pegué este código en una aplicación de consola, depuración de VS 2012 x64 y obtengo el desbordamiento de pila. Si lo cambio a la versión x64, o la depuración o liberación de Win32 funciona bien. Eh ??? ¿Necesito reinstalar VS y / o la plataforma SDK? Estoy en Win7 x64.

Actualización # 2: Publicaciones algo relacionadas:¿Por qué std :: regex_iterator causa un desbordamiento de pila con estos datos? Supongo que si reescribo mi expresión regular, podría ayudar. Sin embargo, todavía no estoy seguro de por qué lo que importa. Y por qué funciona para otros, pero no para mí en mi sistema. Suspiro.

Respuestas a la pregunta(1)

Su respuesta a la pregunta