SemErr() public méthode

public SemErr ( string msg ) : void
msg string
Résultat void
        public void sendError(string errorMessage)
        {
            this.virtualMachine.setErrorMessage(errorMessage);
            parser.SemErr(errorMessage);

            errorsFound = true;
        }
Exemple #2
0
        public Symbol NewSym(int typ, string name, int line)
        {
            if (name.Length == 2 && name[0] == '"')
            {
                parser.SemErr("empty token not allowed"); name = "???";
            }
            Symbol sym = new Symbol(typ, name, line);

            switch (typ)
            {
            case Node.t:  sym.n = terminals.Count; terminals.Add(sym); break;

            case Node.pr: pragmas.Add(sym); break;

            case Node.nt: sym.n = nonterminals.Count; nonterminals.Add(sym); break;
            }
            return(sym);
        }
Exemple #3
0
        internal static NumericConstantNode Create(Parser parser, string tokenValue)
        {
            double d;

            if (TryParse(tokenValue, out d))
            {
                return(new NumericConstantNode(d));
            }
            parser.SemErr("invalid numeric constant");
            return(new NumericConstantNode(double.NaN));
        }
Exemple #4
0
 /// <summary>
 /// Raise runtime error at VM.
 /// </summary>
 /// <param name="msg">Message.</param>
 public void SetRuntimeError(string msg)
 {
     _parser.SemErr(msg);
 }