Index: src/libcfa/containers/result
===================================================================
--- src/libcfa/containers/result	(revision aca65621fec224ce52fce478fdf5225511cb845b)
+++ src/libcfa/containers/result	(revision 4fbdfae0bcc812e14e8400b3c8e8fdba44da96c8)
@@ -35,20 +35,20 @@
 
 forall(otype T, otype E)
-void ?{}(result(T, E) * this);
+void ?{}(result(T, E) & this);
 
 forall(otype T, otype E)
-void ?{}(result(T, E) * this, one_t, T value);
+void ?{}(result(T, E) & this, one_t, T value);
 
 forall(otype T, otype E)
-void ?{}(result(T, E) * this, zero_t, E error);
+void ?{}(result(T, E) & this, zero_t, E error);
 
 forall(otype T, otype E)
-void ?{}(result(T, E) * this, result(T, E) other);
+void ?{}(result(T, E) & this, result(T, E) other);
 
 forall(otype T, otype E)
-void ^?{}(result(T, E) * this);
+void ^?{}(result(T, E) & this);
 
 forall(otype T, otype E)
-result(T, E) ?=?(result(T, E) * this, result(T, E) other);
+result(T, E) ?=?(result(T, E) & this, result(T, E) other);
 
 forall(otype T, otype E)
Index: src/libcfa/containers/result.c
===================================================================
--- src/libcfa/containers/result.c	(revision aca65621fec224ce52fce478fdf5225511cb845b)
+++ src/libcfa/containers/result.c	(revision 4fbdfae0bcc812e14e8400b3c8e8fdba44da96c8)
@@ -19,54 +19,54 @@
 
 forall(otype T, otype E)
-void ?{}(result(T, E) * this) {
-	this->has_value = false;
-	(&this->error){};
+void ?{}(result(T, E) & this) {
+	this.has_value = false;
+	(this.error){};
 }
 
 forall(otype T, otype E)
-void ?{}(result(T, E) * this, one_t, T value) {
-	this->has_value = true;
-	(&this->value){value};
+void ?{}(result(T, E) & this, one_t, T value) {
+	this.has_value = true;
+	(this.value){value};
 }
 
 forall(otype T, otype E)
-void ?{}(result(T, E) * this, zero_t, E error) {
-	this->has_value = false;
-	(&this->error){error};
+void ?{}(result(T, E) & this, zero_t, E error) {
+	this.has_value = false;
+	(this.error){error};
 }
 
 forall(otype T, otype E)
-void ?{}(result(T, E) * this, result(T, E) other) {
-	this->has_value = other.has_value;
+void ?{}(result(T, E) & this, result(T, E) other) {
+	this.has_value = other.has_value;
 	if (other.has_value) {
-		(&this->value){other.value};
+		(this.value){other.value};
 	} else {
-		(&this->error){other.error};
+		(this.error){other.error};
 	}
 }
 
 forall(otype T, otype E)
-result(T, E) ?=?(result(T, E) * this, result(T, E) that) {
-	if (this->has_value & that.has_value) {
-		this->value = that.value;
-	} else if (this->has_value) {
-		^(&this->value){};
-		this->has_value = false;
-		(&this->error){that.error};
+result(T, E) ?=?(result(T, E) & this, result(T, E) that) {
+	if (this.has_value & that.has_value) {
+		this.value = that.value;
+	} else if (this.has_value) {
+		^(this.value){};
+		this.has_value = false;
+		(this.error){that.error};
 	} else if (that.has_value) {
-		^(&this->error){};
-		this->has_value = true;
-		(&this->value){that.value};
+		^(this.error){};
+		this.has_value = true;
+		(this.value){that.value};
 	} else {
-		this->error = that.error;
+		this.error = that.error;
 	}
 }
 
 forall(otype T, otype E)
-void ^?{}(result(T, E) * this) {
-	if (this->has_value) {
-		^(&this->value){};
+void ^?{}(result(T, E) & this) {
+	if (this.has_value) {
+		^(this.value){};
 	} else {
-		^(&this->error){};
+		^(this.error){};
 	}
 }
@@ -109,7 +109,7 @@
 		this->value = value;
 	} else {
-		^(&this->error){};
+		^(this->error){};
 		this->has_value = true;
-		(&this->value){value};
+		(this->value){value};
 	}
 }
@@ -118,7 +118,7 @@
 void set_error(result(T, E) * this, E error) {
 	if (this->has_value) {
-		^(&this->value){};
+		^(this->value){};
 		this->has_value = false;
-		(&this->error){error};
+		(this->error){error};
 	} else {
 		this->error = error;
