Кажется, dialyzer
обнаружил, что TestList
может содержать что-то отличное от {_, _, SomeBoolFlag}
кортежей.
А также вы можете немного упростить этот код:
List = lists:filter(fun({_, _, Flag}) -> not Flag end, TestList)
или
List = [Item || Item={_, _, false} <- TestList]