////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
        ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
        ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

        public int EvaluateSync(enum_EVALFLAGS evaluateFlags, uint timeout, IDebugEventCallback2 eventCallback, out IDebugProperty2 result)
        {
            //
            // Evaluate the expression synchronously.
            //

            LoggingUtils.PrintFunction();

            try
            {
                CLangDebuggeeStackFrame stackFrame = m_stackFrame as CLangDebuggeeStackFrame;

                result = stackFrame.EvaluateCustomExpression(evaluateFlags, m_expression, m_radix);

                if (result == null)
                {
                    return(Constants.E_FAIL);
                }

                return(Constants.S_OK);
            }
            catch (Exception e)
            {
                LoggingUtils.HandleException(e);

                result = null;

                return(Constants.E_FAIL);
            }
        }