diff --git a/go/expressions.cc b/go/expressions.cc
index cb09ec0..7d8963e 100644
--- a/go/expressions.cc
+++ b/go/expressions.cc
@@ -3283,6 +3283,10 @@
   Bexpression*
   do_get_backend(Translate_context* context);
 
+  int
+  do_inlining_cost() const
+  { return 1; }
+
   // When exporting a reference to a const as part of a const
   // expression, we export the value.  We ignore the fact that it has
   // a name.
diff --git a/go/statements.cc b/go/statements.cc
index 27c309e..3dc394a 100644
--- a/go/statements.cc
+++ b/go/statements.cc
@@ -158,6 +158,10 @@
     return Goto_statement::do_import(ifb, loc);
 
   Expression* lhs = Expression::import_expression(ifb, loc);
+
+  if (ifb->match_c_string(" //"))
+    return Statement::make_statement(lhs, true);
+
   ifb->require_c_string(" = ");
   Expression* rhs = Expression::import_expression(ifb, loc);
   return Statement::make_assignment(lhs, rhs, loc);
@@ -2089,6 +2093,14 @@
   return true;
 }
 
+// Export an expression statement.
+
+void
+Expression_statement::do_export_statement(Export_function_body* efb)
+{
+  this->expr_->export_expression(efb);
+}
+
 // Convert to backend representation.
 
 Bstatement*
diff --git a/go/statements.h b/go/statements.h
index 311bbaa..f1c6be9 100644
--- a/go/statements.h
+++ b/go/statements.h
@@ -924,6 +924,13 @@
   bool
   do_may_fall_through() const;
 
+  int
+  do_inlining_cost()
+  { return 0; }
+
+  void
+  do_export_statement(Export_function_body*);
+
   Bstatement*
   do_get_backend(Translate_context* context);
 
