コード例 #1
0
        public static void return_(Token t, string scope)
        {
            SAR expression = null;

            ShuntYardAll();
            if (SAS.Count > 0)
            {
                expression = SAS.Pop();
                if (expression.value == "true" || expression.value == "false")
                {
                    expression.dataType = "bool";
                }
            }
            if (!SymbolTable.return_(expression, scope))
            {
                SemanticReturnError(expression, scope);
            }
            if (expression == null)
            {
                ICode.RTN();
            }
            else
            {
                ICode.RETURN(expression.symid);
            }
        }