Ejemplo n.º 1
0
		public void Error (int code, Location loc, string error)
		{
			if (reporting_disabled > 0)
				return;

			ErrorMessage msg = new ErrorMessage (code, loc, error, extra_information);
			extra_information.Clear ();

			printer.Print (msg, settings.ShowFullPaths);

			if (settings.Stacktrace)
				Console.WriteLine (FriendlyStackTrace (new StackTrace (true)));

			if (printer.ErrorsCount == settings.FatalCounter)
				throw new FatalException (msg.Text);
		}
Ejemplo n.º 2
0
		public void Warning (int code, int level, Location loc, string message)
		{
			if (reporting_disabled > 0)
				return;

			if (!settings.IsWarningEnabled (code, level))
				return;

			if (warning_regions_table != null && !loc.IsNull) {
				WarningRegions regions;
				if (warning_regions_table.TryGetValue (loc.File, out regions) && !regions.IsWarningEnabled (code, loc.Row))
					return;
			}

			AbstractMessage msg;
			if (settings.IsWarningAsError (code)) {
				message = "Warning as Error: " + message;
				msg = new ErrorMessage (code, loc, message, extra_information);
			} else {
				msg = new WarningMessage (code, loc, message, extra_information);
			}

			extra_information.Clear ();
			printer.Print (msg, settings.ShowFullPaths);
		}