EN CSharp Directive Error - LIHACHTETAN/ClassicUO-Bad-Newbie-CSharp-Scripts-IDE GitHub Wiki
Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
Obvious compilation error
Stops the compilation with an author error if the directive belongs to the active branch. The examples show conditions for intentional rejection.
Simple example (Example.cs)
Save this example separately as Example.cs. Run it independently of the other examples on this page.
Example.cs:
// PROJECT-EXAMPLE
#define CONFIGURED
#if !CONFIGURED
#error Missing configuration
#endif
System.Console.WriteLine("Configured");
This example compiles: CONFIGURED is defined, so the #error branch is inactive. The deliberately failing examples below remain labelled.
Result:
Configured
Syntax
#error message
These examples intentionally do not compile. After setting the desired configuration, remove the bug or move it to an inactive branch.
Status: Deliberate compilation error.
Example 1
#error Missing required configuration
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using System.IO;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
public static class Program
{
public static async Task Main(string[] args)
{
Console.WriteLine("Never reached");
}
}
Example 2
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using System.IO;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
public static class Program
{
public static async Task Main(string[] args)
{
#if !CONFIGURED
#error Define CONFIGURED before compiling
#endif
Console.WriteLine("Configured");
}
}
Official source: Microsoft Learn.