public void gen_opt_sim_negate(SemanticRec opSign, SemanticRec term)
    {
        if (opSign != null && term != null)
        {
            Type termType = getTypeFromSR(term);

            String op = opSign.getDatum(0);
            switch (termType)
            {
            case INTEGER:
                switch (op)
                {
                case "MP_MINUS":
                    negateStackI();
                    break;
                case "MP_PLUS":
                    break;
                default:
                    Parser.semanticError(opSign + " is not a negation operator for type " + termType);
                }
                break;
            case FLOAT:
                switch (op)
                {
                case "MP_MINUS":
                    negateStackF();
                    break;
                case "MP_PLUS":
                    break;
                default:
                    Parser.semanticError(opSign + " is not a negation operator for type " + termType);
                }
                break;
            default:
                Parser.semanticError(termType + "does not have a negation operation");
            }
        }
    }