Das muss zwangsläufig zum Crash führen, da sich die SUBs Test_A und Test_B ja permanent gegenseitig aurufen. Mit jedem Ausruf, wird die Rücksprungadresse auf den HW-Stack geschrieben und normalerweise bein Verlassen der SUB wieder von dort gelöscht.
In Deinem Konstrukt kommt es aber gar nicht dazu, da zwar immer eine weitere SUB aufgerufen wird, aber kein Rücksprung stattfindet.
Ich empfehle Dir, die Programmlogik zu überdenken.