Example #1
0
        private void ProcessReturnStatement(IReturnStatement pStatement)
        {
            if (mCurrentBlock.Terminated)
            {
                mCurrentBlock = CreateBlock(CreateLabel());
            }

            HLLocation locationExpression = null;

            if (pStatement.Expression != null)
            {
                locationExpression = ProcessExpression(pStatement.Expression);
            }
            mCurrentBlock.EmitReturn(locationExpression);
        }