Simplify variable name of receiver in C++ shims

Even without $, `self` can't collide with any of the variable names the
user has given to the other function parameters.
diff --git a/gen/write.rs b/gen/write.rs
index 8f3ecc0..9ab6e38 100644
--- a/gen/write.rs
+++ b/gen/write.rs
@@ -374,7 +374,7 @@
         if receiver.mutability.is_none() {
             write!(out, "const ");
         }
-        write!(out, "{} *self$", receiver.ident);
+        write!(out, "{} *self", receiver.ident);
     }
     for (i, arg) in efn.args.iter().enumerate() {
         if i > 0 || efn.receiver.is_some() {
@@ -442,7 +442,7 @@
     }
     match &efn.receiver {
         None => write!(out, "{}$(", efn.ident),
-        Some(_) => write!(out, "(self$->*{}$)(", efn.ident),
+        Some(_) => write!(out, "(self->*{}$)(", efn.ident),
     }
     for (i, arg) in efn.args.iter().enumerate() {
         if i > 0 {
@@ -541,7 +541,7 @@
         if receiver.mutability.is_none() {
             write!(out, "const ");
         }
-        write!(out, "{} &self$", receiver.ident);
+        write!(out, "{} &self", receiver.ident);
         needs_comma = true;
     }
     for arg in &sig.args {