summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--limbo/types.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/limbo/types.c b/limbo/types.c
index 8c225279..c8105d5a 100644
--- a/limbo/types.c
+++ b/limbo/types.c
@@ -2023,8 +2023,8 @@ cycfield(Type *base, Decl *id)
error(base->src.start, "illegal type cycle without a reference in field %s of %t",
id->sym->name, base);
id->cycerr = 1;
- }else if(arc & ArcCyc && oldcycles){
- if((arc & ArcArray) && id->cyc == 0 && !(arc & ArcPolycyc)){
+ }else if(arc & ArcCyc){
+ if((arc & ArcArray) && oldcycles && id->cyc == 0 && !(arc & ArcPolycyc)){
if(id->cycerr == 0)
error(base->src.start, "illegal circular reference to type %T in field %s of %t",
id->ty, id->sym->name, base);