Can't say exactly where, because the gdb frame #0 was unusable.
(Stack violation?) Anyway, it was in FGTower::CheckCircuitList().
Not reproducible, but I saw this a few times already. That's all I
could collect:
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1089412704 (LWP 1279)]
0x0409 in ?? ()
(gdb) bt
#0 0x0409 in ?? ()
#1 0x080a625d in FGTower::Update (this=0xd5c3948, dt=0.2) at
tower.cxx:392
#2 0x08082c8a in FGATCMgr::update (this=0x99d54c8, dt=0.01) at
stl_list.h:167
#3 0x08054166 in fgMainLoop () at globals.hxx:278
#4 0x08078a29 in fgOSMainLoop () at fg_os_sdl.cxx:191
#5 0x0805284f in fgMainInit (argc=14, argv=0xbfffeba4) at main.cxx:958
#6 0x080516c2 in main (argc=304878152, argv=0x122c1248) at bootstrap.cxx:192
(gdb) print *this
$2 = {FGATC = {_vptr.FGATC = 0x8421ae8, lon = -1.095829963684082, lat =
51.616298675537109, elev = 226,
x = 3967928.5, y = -75899.2265625, z = 4976584, freq = 12715, range = 50,
ident = {static npos = 4294967295,
_M_dataplus = {std::allocatorchar = {No data fields}, _M_p =
0x4ef492cc EGUB},
static _S_empty_rep_storage = {0, 0, 0, 0}}, name = {static npos =
4294967295,
_M_dataplus = {std::allocatorchar = {No data fields}, _M_p =
0x4ef492fc Benson},
static _S_empty_rep_storage = {0, 0, 0, 0}}, _type = TOWER, _voice = 151,
_playing = 7, _voiceOK = false,
_vPtr = 0x1, pending_transmission = {static npos = 4294967295,
_M_dataplus = {std::allocatorchar = {No data fields},
_M_p = 0x4ef97d34 Piper-nine-one-quebec Cleared to land}, static
_S_empty_rep_storage = {0, 0, 0, 0}},
freqClear = false, receiving = true, responseReqd = false,
runResponseCounter = false, responseTime = 1.2,
responseCounter = 1., responseID = {static npos =
4294967295,
_M_dataplus = {std::allocatorchar = {No data fields}, _M_p =
0x4efca444 Piper-nine-one-quebec},
static _S_empty_rep_storage = {0, 0, 0, 0}}, respond = false,
_runReleaseCounter = false,
_releaseTime = 5.5, _releaseCounter = 5.7325, _display = false,
_displaying = false,
_pending = false, _timeout = 0, _callback_code = 0, _transmit = false,
_transmitting = false,
_counter = 5.3118970141483437e-315, _max_count = 5}, ATCmgr = 0x99d54c8,
update_count = 6,
update_count_max = 15, timeSinceLastDeparture = , departed = false,
wind_from_hdg = 0x99d48c8,
wind_speed_knots = 0x99d4d28, aptElev = 68.8847998, activeRwy =
{static npos = 4294967295,
_M_dataplus = {std::allocatorchar = {No data fields}, _M_p =
0x4efb4a04 19},
static _S_empty_rep_storage = {0, 0, 0, 0}}, rwy = {threshold_pos = {n =
{-1.094124101045487,
51.622906647893181, 68.8847998}}, end1ortho = {n = {0, -0,
68.8847998}}, end2ortho = {
n = {-0.6591277912967578, 1770.2065233234418, 68.8847998}}, hdg =
187.81,
length = 1819.35121, width = 45.719, rwyID = {static
npos = 4294967295,
_M_dataplus = {std::allocatorchar = {No data fields}, _M_p =
0x4efb4a04 19},
static _S_empty_rep_storage = {0, 0, 0, 0}}, patternDirection = -1},
rwyOccupied = false, ortho = {
origin = {n = {-1.094124101045487, 51.622906647893181,
68.8847998}}, theta = 3.2779029593865081,
correction_factor = 0.62083439314658428},
appList = {std::_List_baseTowerPlaneRec*, std::allocatorTowerPlaneRec*
= {std::_List_alloc_baseTowerPlan
eRec*, std::allocatorTowerPlaneRec*, true = {_M_node = 0x4efbe4e8}, No
data fields}, No data fields},
appListItr = {std::_List_iterator_base = {_M_node = 0x4efbe4e8}, No data
fields},
circuitAppList = {std::_List_baseTowerPlaneRec*,
std::allocatorTowerPlaneRec* = {std::_List_alloc_baseTowerPlaneRec*,
std::allocatorTowerPlaneRec*, true = {
_M_node = 0x4efbe4d8}, No data fields}, No data fields},
circuitAppListItr = {std::_List_iterator_base = {_M_node = 0xd5c3b60}, No
data fields},
depList = {std::_List_baseTowerPlaneRec*, std::allocatorTowerPlaneRec*
= {std::_List_alloc_baseTowerPlaneRec*, std::allocatorTowerPlaneRec*,
true = {_M_node = 0x4efbe4c8}, No data fields}, No data fields},
depListItr = {std::_List_iterator_base = {_M_node = 0x4efbe4c8}, No data
fields},
circuitList = {std::_List_baseTowerPlaneRec*,
std::allocatorTowerPlaneRec* = {std::_List_alloc_baseTowerPlaneRec*,
std::allocatorTowerPlaneRec*, true = {_M_node = 0x4efbe4b8}, No data
fields}, No data fields},
circuitListItr = {std::_List_iterator_base = {_M_node = 0x4efbe5f8}, No
data fields},
holdList = {std::_List_baseTowerPlaneRec*, std::allocatorTowerPlaneRec*
= {std::_List_alloc_baseTowerPlaneRec*, std::allocatorTowerPlaneRec*,
true = {_M_node = 0x4efbe4a8}, No data fields}, No data fields},
holdListItr = {std::_List_iterator_base = {_M_node = 0x4efbe4a8}, No data
fields},
rwyList = {std::_List_baseTowerPlaneRec*, std::allocatorTowerPlaneRec*
=