List of sprite errors in the Pokémon games
Sprite errors are cases where the appearances of in-game sprites are different from how they are supposed to be, not because of programming logic errors but because the sprite data itself is wrong in some way (usually inconsistency with other similar sprites). This page lists known sprite errors in the Pokémon games.
In Generation IV
HM05 Defog
In Pokémon Diamond, Pearl and Platinum, TMs and HMs have sprites that are colored based on their type, like in Pokémon FireRed and LeafGreen and Pokémon Emerald.
TMs and HMs that teach Water-type moves are supposed to be a deep blue. While Flying-type TMs and HMs are normally colored a lighter blue, the HM that teaches Defog is colored a deeper blue, as if it teaches a Water-type move.
In Generation V
TM67 Retaliate
In Japanese versions of Pokémon Black and White, Retaliate is a Normal-type move, but its TM sprite is shown as a Dark-type move. This has been fixed in other language versions of those games.
TM94 Rock Smash
In Pokémon Black and White, Rock Smash is a Fighting-type move, but its TM sprite is shown as a Rock-type move. This has not been fixed in newer releases.
In Generation VII
TM50 Roost
Since Pokémon FireRed and LeafGreen introduced icons for items to the mainline Pokémon series, TMs have been represented by a disc (colored according to the move's type); HMs use a variant of the same design with an oval cutout in the topmost part of the disc.
However, in Pokémon: Let's Go, Pikachu! and Let's Go, Eevee! 1.0.2 (and likely in earlier versions), TM50 (Roost), neither a move nor a TM number ever used as an HM, uses the latter icon.