One potential issue with GCM is that it can potentially make the problems you get from repeating nonces worse; instead of allowing you to forge, and revealing the plaintext for the packets with the repeated nonces, it can become a key recovery issue.
Here's one way it can happen; suppose the AAD is the 128 bit key, and you repeat the nonce with three different messages of different lengths (a 1 block, a 2 block and a 3 block message). Then, the three GCM tags are computed as:
$$KH^3 + C_1H^2 + C_2H + Y = T_1$$
$$KH^4 + C_3H^3 + C_4H^2 + C_5H + Y = T_2$$
$$KH^5 + C_6H^4 + C_7H^3 + C_8H^2 + C_9H + Y = T_3$$
where $K$ is the unknown key, $H$ is the unknown $H = E_k(0)$ value, $Y$ is the unknown value $Y = E_k(nonce)$ used to protect the tag (and because all three messages use the same nonce, they have that value in common), and $C_1, ..., C_9$ and the tag values $T_1, T_2, T_3$ are values known to the attacker.
These are three polynomial equations in three unknowns; they can be combined into a single fourth degree polynomial in $H$ (and not $K$ or $Y$); it can be solved for $H$ (giving up to 4 possible solutions), from that, you can recover the secret key $K$ value as one of 4 possibilities.