-db991403fc97854201b3f40492f4f6b9d471cabc
+d6338c94e5574b63469c740159d064e89c6718bf
The first line of this file holds the git revision number of the last
merge done from the gofrontend repository.
// Don't build a circular data structure. GENERIC can't handle
// it.
if (this->seen_in_get_backend_)
- {
- this->is_circular_ = true;
- return gogo->backend()->circular_pointer_type(bt, true);
- }
+ return gogo->backend()->circular_pointer_type(bt, true);
this->seen_in_get_backend_ = true;
bt1 = Type::get_named_base_btype(gogo, base);
this->seen_in_get_backend_ = false;
- if (this->is_circular_)
- bt1 = gogo->backend()->circular_pointer_type(bt, true);
if (!gogo->backend()->set_placeholder_pointer_type(bt, bt1))
bt = gogo->backend()->error_type();
return bt;
// Don't build a circular data structure. GENERIC can't handle
// it.
if (this->seen_in_get_backend_)
- {
- this->is_circular_ = true;
- return gogo->backend()->circular_pointer_type(bt, false);
- }
+ return gogo->backend()->circular_pointer_type(bt, false);
this->seen_in_get_backend_ = true;
bt1 = Type::get_named_base_btype(gogo, base);
this->seen_in_get_backend_ = false;
- if (this->is_circular_)
- bt1 = gogo->backend()->circular_pointer_type(bt, false);
if (!gogo->backend()->set_placeholder_pointer_type(bt, bt1))
bt = gogo->backend()->error_type();
return bt;
interface_method_tables_(NULL), pointer_interface_method_tables_(NULL),
location_(location), named_btype_(NULL), dependencies_(),
is_alias_(false), is_visible_(true), is_error_(false), in_heap_(true),
- is_placeholder_(false), is_converted_(false), is_circular_(false),
- is_verified_(false), seen_(false), seen_in_compare_is_identity_(false),
+ is_placeholder_(false), is_converted_(false), is_verified_(false),
+ seen_(false), seen_in_compare_is_identity_(false),
seen_in_get_backend_(false), seen_alias_(false)
{ }
is_valid() const
{ return !this->is_error_; }
- // Whether this is a circular type: a pointer or function type that
- // refers to itself, which is not possible in C.
- bool
- is_circular() const
- { return this->is_circular_; }
-
// Return the base type for this type.
Type*
named_base();
// Whether this type has been converted to the backend
// representation. Implies that is_placeholder_ is false.
bool is_converted_;
- // Whether this is a pointer or function type which refers to the
- // type itself.
- bool is_circular_;
// Whether this type has been verified.
bool is_verified_;
// In a recursive operation such as has_pointer, this flag is used