The value is constant, but when emitted has a side effect. This is used by BitwiseAnd to ensure that the second expression is invoked regardless of the value of the left side.
Inheritance: Constant
Exemple #1
0
		public override Constant ConvertExplicitly (bool in_checked_context, TypeSpec target_type)
		{
			Constant new_value = value.ConvertExplicitly (in_checked_context, target_type);
			if (new_value == null)
				return null;

			var c = new SideEffectConstant (new_value, side_effect, new_value.Location);
			c.type = target_type;
			c.eclass = eclass;
			return c;
		}