2010-05-21 9 views
19

Al compilar una aplicación. VS se quejará de conteo de errores excedido:¿Cómo aumentar el límite de error en Visual Studio?

fatal error C1003: error count exceeds 100; stopping compilation 

¿Hay alguna manera de aumentar el límite?

Gracias de antemano,
- Oleksii Skidan

+9

curiosidad, ¿por qué quieres hacer eso? – jaywon

+13

No sé si es posible o no, pero ¿puedo preguntarle sobre su motivación? ¿Recibe más de 100 * mensajes de error significativos? – avakar

+1

Digamos que quiero encontrar todas las funciones que se declaran en un encabezado y usado en un archivo fuente. Ese encabezado puede incluir miles de otros encabezados. Si desactivo la inclusión de ese encabezado, la compilación fallará con C1003. Lo malo es que la falla ocurrirá n un encabezado en la jerarquía de inclusión, para que nunca descubra qué funciones se usaron en mi archivo fuente. –

Respuesta

6

Yo no lo creo. VS básicamente informa todos los errores que encuentra durante las compilaciones. Puede haber algunas partes erróneas del código que hacen que el compilador quede atrapado en un ciclo infinito de "error".

El límite se implementó para evitar eso. En la mayoría de los casos, los 100 errores que recibe son el mismo error que se informa una y otra vez. ¿Cuál sería el sentido de aumentar el número de repeticiones?

Quizás pueda publicar el fragmento de código donde se produce el error primero, para que podamos ayudarlo a solucionarlo.

3

Creo que es un límite codificado, por lo que no.

Como han comentado otros, es difícil entender lo que quiere lograr con esto.

Al final del día, tendrá que arreglarlos todos, así que póngase atascado y comience a arreglarlos. Eventualmente, obtendrás menos de 100 y podrás comenzar a contarlos.

Normalmente no es útil informar el número real de errores cuando esto ocurre. La mayoría de las veces, cuando obtiene C1003, en realidad son solo unos pocos errores reales, lo que genera una cadena masiva de otros errores.

(por ejemplo)

  • Si hay un error en un archivo .h, se informará de que el error en cada archivo .cpp que #includes ella.
  • Si hay un error que impide que se defina cualquier tipo de identificador (por ejemplo, una clase, variable, nombre del método), cada vez que intente utilizarlo más adelante, se informará un error.
+0

@ Paul Butcher Eg si tienes 3 proyectos y dos dependen de una biblioteca de clase, entonces los dos pueden estar lanzando un trillón de errores debido a la biblioteca pero no puedes llegar a la biblioteca debido a errores al limite. Ahí es donde estoy ahora y es un dolor. Incluso si solo compila la biblioteca, los errores de los otros dos proyectos se interponen. – SteveCinq

2

Solución para reducir número de errores indicados:

  • cl.exe de cambio de nombre a la CL-orig.exe
  • rollo de su propio cl.exe que pone en marcha cl-orig.exe, capturando su stdout/stderr
  • de análisis stderr, en busca de mensajes de error y las contando
  • descansos después de los primeros n errores

Consulte http://msdn.microsoft.com/en-us/library/ms682499(v=vs.85).aspx para obtener algunas sugerencias.

23

Esta limitación está codificada.Aquí está el puesto del empleado MSFT en el grupo microsoft.public.vsnet.general de fecha 2006 (busque 'C1003 El error fatal'):

Hola,

Desafortunadamente esto 100 limitación se no modificable y no se puede cambiar. Es simplemente práctico para mantener todos los errores información ya que un error puede causar otros varios errores.

Espero que entiendas el racional detrás de este diseño por nuestro equipo del producto. Sin embargo, si usted todavía tiene preocupaciones acerca de esto, por favor no dude a presentar sus comentarios a
http://connect.microsoft.com/Main/content/content.aspx?ContentID=2220 que es supervisada por nuestro equipo de producto . Gracias por su comprensión .

Atentamente, Walter Wang (WAW ... @ online.microsoft.com, retire 'en línea'.) Microsoft Online Community Soporte"

Cuestiones relacionadas