1*e4b17023SJohn Marino/* Copyright (C) 2001, 2002, 2003, 2006, 2008 Free Software Foundation, Inc. 2*e4b17023SJohn Marino 3*e4b17023SJohn MarinoThis file is part of GCC. 4*e4b17023SJohn Marino 5*e4b17023SJohn MarinoGCC is free software; you can redistribute it and/or modify it under 6*e4b17023SJohn Marinothe terms of the GNU General Public License as published by the Free 7*e4b17023SJohn MarinoSoftware Foundation; either version 3, or (at your option) any later 8*e4b17023SJohn Marinoversion. 9*e4b17023SJohn Marino 10*e4b17023SJohn MarinoGCC is distributed in the hope that it will be useful, but WITHOUT ANY 11*e4b17023SJohn MarinoWARRANTY; without even the implied warranty of MERCHANTABILITY or 12*e4b17023SJohn MarinoFITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 13*e4b17023SJohn Marinofor more details. 14*e4b17023SJohn Marino 15*e4b17023SJohn MarinoYou should have received a copy of the GNU General Public License 16*e4b17023SJohn Marinoalong with GCC; see the file COPYING3. If not see 17*e4b17023SJohn Marino<http://www.gnu.org/licenses/>. */ 18*e4b17023SJohn Marino 19*e4b17023SJohn Marino/* DK_UNSPECIFIED must be first so it has a value of zero. We never 20*e4b17023SJohn Marino assign this kind to an actual diagnostic, we only use this in 21*e4b17023SJohn Marino variables that can hold a kind, to mean they have yet to have a 22*e4b17023SJohn Marino kind specified. I.e. they're uninitialized. Within the diagnostic 23*e4b17023SJohn Marino machinery, this kind also means "don't change the existing kind", 24*e4b17023SJohn Marino meaning "no change is specified". */ 25*e4b17023SJohn MarinoDEFINE_DIAGNOSTIC_KIND (DK_UNSPECIFIED, "") 26*e4b17023SJohn Marino 27*e4b17023SJohn Marino/* If a diagnostic is set to DK_IGNORED, it won't get reported at all. 28*e4b17023SJohn Marino This is used by the diagnostic machinery when it wants to disable a 29*e4b17023SJohn Marino diagnostic without disabling the option which causes it. */ 30*e4b17023SJohn MarinoDEFINE_DIAGNOSTIC_KIND (DK_IGNORED, "") 31*e4b17023SJohn Marino 32*e4b17023SJohn Marino/* The remainder are real diagnostic types. */ 33*e4b17023SJohn MarinoDEFINE_DIAGNOSTIC_KIND (DK_FATAL, "fatal error: ") 34*e4b17023SJohn MarinoDEFINE_DIAGNOSTIC_KIND (DK_ICE, "internal compiler error: ") 35*e4b17023SJohn MarinoDEFINE_DIAGNOSTIC_KIND (DK_ERROR, "error: ") 36*e4b17023SJohn MarinoDEFINE_DIAGNOSTIC_KIND (DK_SORRY, "sorry, unimplemented: ") 37*e4b17023SJohn MarinoDEFINE_DIAGNOSTIC_KIND (DK_WARNING, "warning: ") 38*e4b17023SJohn MarinoDEFINE_DIAGNOSTIC_KIND (DK_ANACHRONISM, "anachronism: ") 39*e4b17023SJohn MarinoDEFINE_DIAGNOSTIC_KIND (DK_NOTE, "note: ") 40*e4b17023SJohn MarinoDEFINE_DIAGNOSTIC_KIND (DK_DEBUG, "debug: ") 41*e4b17023SJohn Marino/* These two would be re-classified as DK_WARNING or DK_ERROR, so the 42*e4b17023SJohn Marinoprefix does not matter. */ 43*e4b17023SJohn MarinoDEFINE_DIAGNOSTIC_KIND (DK_PEDWARN, "pedwarn: ") 44*e4b17023SJohn MarinoDEFINE_DIAGNOSTIC_KIND (DK_PERMERROR, "permerror: ") 45*e4b17023SJohn Marino 46