There's no guarantee that atom->tag will be type int* in the future. In fact, there's pretty much no guarantee that any of the LAMMPS code will remain unchanged in the future. But as far as I know, there's no plan to change atom->tag to anything other than an int*.
LAMMPS has the ability to turn off tagging, which it does when there are too many atoms to fit into a small int:
create_atoms.cpp: if (atom->natoms > MAXSMALLINT) atom->tag_enable = 0;