static private void Define(string[] parameters, ref PreprocessingContext context)
        {
            if (context.CanInclude)
            {
                string   name;
                string[] mParam;
                name = GetMacro(parameters[0], out mParam);

                if (!context.CanBeDefined(name, mParam))
                {
                    context.messageLog.AddError(context.currentFile, context.currentLine,
                                                parameters[0] + " is already defined.");
                    return;
                }

                if (parameters.Length == 1)
                {
                    context.defCol.Add(name, "", mParam);
                }
                else
                {
                    context.defCol.Add(name, parameters[1], mParam);
                }
            }
        }
        private static void Define(string[] parameters, ref PreprocessingContext context)
        {
            if (context.CanInclude)
            {
                string name;
                string[] mParam;
                name = GetMacro(parameters[0], out mParam);

                if (!context.CanBeDefined(name, mParam))
                {
                    context.messageLog.AddError(context.currentFile, context.currentLine,
                        parameters[0] + " is already defined.");
                    return;
                }

                if (parameters.Length == 1)
                {
                    context.defCol.Add(name, "", mParam);
                }
                else
                {
                    context.defCol.Add(name, parameters[1], mParam);
                }
            }
        }