See http://live.gnome.org/Vala for details about Vala language. This mode was based on Dylan Moonfire's csharp-mode. This is a copy of the function in cc-mode which is used to handle the eval-when-compile which is needed during other times.