projects
/
gcc.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
e395eac
)
compiler: Fix a couple of type reflection strings.
author
Ian Lance Taylor
<ian@gcc.gnu.org>
Tue, 2 Oct 2012 23:50:23 +0000
(23:50 +0000)
committer
Ian Lance Taylor
<ian@gcc.gnu.org>
Tue, 2 Oct 2012 23:50:23 +0000
(23:50 +0000)
From-SVN: r192014
gcc/go/gofrontend/types.cc
patch
|
blob
|
history
diff --git
a/gcc/go/gofrontend/types.cc
b/gcc/go/gofrontend/types.cc
index 3ae54a43806a221d2740e4f4344c483ad6acd189..1736a32654d657acdf821e5c9e5c34993eff2a25 100644
(file)
--- a/
gcc/go/gofrontend/types.cc
+++ b/
gcc/go/gofrontend/types.cc
@@
-4919,14
+4919,15
@@
Struct_type::write_equal_function(Gogo* gogo, Named_type* name)
void
Struct_type::do_reflection(Gogo* gogo, std::string* ret) const
{
void
Struct_type::do_reflection(Gogo* gogo, std::string* ret) const
{
- ret->append("struct {
");
+ ret->append("struct {");
for (Struct_field_list::const_iterator p = this->fields_->begin();
p != this->fields_->end();
++p)
{
if (p != this->fields_->begin())
for (Struct_field_list::const_iterator p = this->fields_->begin();
p != this->fields_->end();
++p)
{
if (p != this->fields_->begin())
- ret->append("; ");
+ ret->push_back(';');
+ ret->push_back(' ');
if (p->is_anonymous())
ret->push_back('?');
else
if (p->is_anonymous())
ret->push_back('?');
else
@@
-4959,7
+4960,10
@@
Struct_type::do_reflection(Gogo* gogo, std::string* ret) const
}
}
}
}
- ret->append(" }");
+ if (!this->fields_->empty())
+ ret->push_back(' ');
+
+ ret->push_back('}');
}
// Mangled name.
}
// Mangled name.
@@
-8390,6
+8394,7
@@
Named_type::do_reflection(Gogo* gogo, std::string* ret) const
}
if (this->in_function_ != NULL)
{
}
if (this->in_function_ != NULL)
{
+ ret->push_back('\t');
ret->append(Gogo::unpack_hidden_name(this->in_function_->name()));
ret->push_back('$');
if (this->in_function_index_ > 0)
ret->append(Gogo::unpack_hidden_name(this->in_function_->name()));
ret->push_back('$');
if (this->in_function_index_ > 0)
@@
-8399,6
+8404,7
@@
Named_type::do_reflection(Gogo* gogo, std::string* ret) const
ret->append(buf);
ret->push_back('$');
}
ret->append(buf);
ret->push_back('$');
}
+ ret->push_back('\t');
}
ret->append(Gogo::unpack_hidden_name(this->named_object_->name()));
}
}
ret->append(Gogo::unpack_hidden_name(this->named_object_->name()));
}