about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2016-05-25 18:56:37 -0700
committerKartik K. Agaram <vc@akkartik.com>2016-05-25 18:56:37 -0700
commit9c30b38376e66442e6fde85ef54b959dc548bfe3 (patch)
tree9201f3bdcb7f3f96c6273e472286f52cc86f9559
parent67a180e330687d6252b22b6211e8da3ce608add0 (diff)
downloadmu-9c30b38376e66442e6fde85ef54b959dc548bfe3.tar.gz
3008
-rw-r--r--010vm.cc4
-rw-r--r--014literal_string.cc6
2 files changed, 5 insertions, 5 deletions
diff --git a/010vm.cc b/010vm.cc
index ee18a171..67dd0e1a 100644
--- a/010vm.cc
+++ b/010vm.cc
@@ -57,7 +57,7 @@ struct reagent {
   double value;
   bool initialized;
   // End reagent Fields
-  reagent(string s);
+  reagent(const string& s);
   reagent() :type(NULL), value(0), initialized(false) {}
   ~reagent();
   void clear();
@@ -258,7 +258,7 @@ void instruction::clear() { is_label=false; label.clear(); name.clear(); old_nam
 bool instruction::is_empty() { return !is_label && name.empty(); }
 
 // Reagents have the form <name>:<type>:<type>:.../<property>/<property>/...
-reagent::reagent(string s) :original_string(s), type(NULL), value(0), initialized(false) {
+reagent::reagent(const string& s) :original_string(s), type(NULL), value(0), initialized(false) {
   // Parsing reagent(string s)
   istringstream in(s);
   in >> std::noskipws;
diff --git a/014literal_string.cc b/014literal_string.cc
index a195c195..26d7375d 100644
--- a/014literal_string.cc
+++ b/014literal_string.cc
@@ -107,10 +107,10 @@ void slurp_quoted_comment_aware(istream& in, ostream& out) {
 :(after "Parsing reagent(string s)")
 if (s.at(0) == '[') {
   assert(*s.rbegin() == ']');
-  // delete [] delimiters
-  s.erase(0, 1);
-  strip_last(s);
   name = s;
+  // delete [] delimiters
+  name.erase(0, 1);
+  strip_last(name);
   type = new type_tree("literal-string", 0);
   return;
 }