If you call the 35 subroutine twice, you are trying to define twice the groups 'Thing 1' and 'Thing 2'. That is not allowed by the GDL interpreter, EVEN IF you killed the previous groups. Killing them is only useful to free some memory, but the names can't be reused.
If you don't find other ways to accomplish your needing, try using names defined with some variable. I did it sometime, the past.
There are more elegant solutions, but let try this one:
n=1: GOSUB 35
ADDx 5
n=2: GOSUB 35
END
35: !!! Thing
GROUP 'Thing 1'+STR(n,1,0)
BLOCK 1,1,1
ENDGROUP
GROUP 'Thing 2'+STR(n,1,0)
BLOCK .5,.5,1
ENDGROUP
result = SUBGROUP('Thing 1'+STR(n,1,0), 'Thing 2'+STR(n,1,0))
PLACEGROUP result
KILLGROUP 'Thing 1'+STR(n,1,0)
KILLGROUP 'Thing 2'+STR(n,1,0)
!!! Thing 3
BLOCK 2,2,.1
RETURN
_________________
--Roberto Corona--
www.archiradar.com
AC18 - ITA full on Win10
_________________
_________________