The wikipedia pseudocode on BK clique finding with pivoting:
BronKerbosch2(R,P,X):
if P and X are both empty:
report R as a maximal clique
choose a pivot vertex u in P ⋃ X
for each vertex v in P \ N(u):
BronKerbosch2(R ⋃ {v}, P ⋂ N(v), X ⋂ N(v))
P := P \ {v}
X := X ⋃ {v}
I'm unclear on what happens with P union X is empty. Since u is undefined, does the function continue with N(u) as the empty set (i.e. it continues with for each vertex v in P), or does it return to the caller?