The ruleset of the official library is quite clear about the fact that basically every symbol must have a footprint assigned. We call this a "fully specified symbol" (it is as specified as feasible for the official lib -- we can not really provide order numbers of distributors nor can we provide you with your personal house part number for obvious reasons). This combination is also vetted during the contribution process (The reviewer checks that the pad numbers of the footprint agree with what the symbol numbering expects and if the footprint itself is for the correct mechanical dimensions of the package -- very tricky with parts in SOT-23 and similar where manufactures simply can not agree on a pad numbering scheme which is annoying to say the least)
Of course as this is vetted by a human there is always the chance for an error to appear.
So now to the exceptions. A few symbol libraries are allowed to have so called generic symbols in them.
One of these is the device lib. It holds the most generic symbols of all (like the generic resistor, capacitor but also a generic symbol for transistors -- The latter for example also has a more specialized library with fully specified symbols). Symbols in this library sometimes don't even have any footprint filters setup (would not really be feasible for the transistor symbol for example).
And then there are the connector libs. These again do not have a footprint assigned, but they have a footprint filter which will help to find footprints during the assignment process (either for cvpcb or with the experimental option in the "add symbol dialog").
The logic libs are a slightly different story. They are basically legacy libs in a very bad state. Not only do they not have a footprint assigned, but they still have hidden power pins. It was always planned to rework them but well nobody was prepared to sink the time necessary into them (i was tempted to just throw them out and let contributors start fresh but the fear of the backlash for such a move prevented me from doing so). Luckily at least the cmos4xxx lib and the 74xx lib got reworked such that they no longer have hidden power pins (thanks to the kicad forum user bobc who made a script that makes this reasonably easy).
Another obvious exception are symbols that are not representing a device. Like the power symbols or graphical symbols.
Regarding the comment that wrong footprint names are used:
While it can happen that symbols have a wrong footprint assigned it is unlikely that many symbols are affected by this as this is something that is automatically checked. If you therefore see a lot of symbols with illegal footprints then you might have a library in an inconsistent state (example the symbol lib from v5 with footprints from v4 -- which can easily happen during an update from v4 to v5 as the footprints were pointed to github in v4 and this is not updated during the installation process. See
https://forum.kicad.info/t/i-had-kicad-4-installed-previosly-now-i-updated-to-v5-now-i-have-some-problems-with-the-library-setup/11932 to learn how to detect if this is the case for you and how to solve it)
for details regarding the ruleset see
https://kicad.org/libraries/klc/G2.1/
And i checked the symbol for L1117. As a first observation there is no such symbol in the official lib. I assume OP meant LM1117 or LP1117. Both do indeed not hold a footprint reference in the library of version 5. Which means this symbol strictly speaking breaks the current ruleset (The rework of the regulator lib was a huge amount of work during the v5 release process. So i am not suprised that we missed something.)
This will not be fixed for v5 as the library team moved on to preparing the v6 release. But i reported this on gitlab so it might be fixed for v6
https://gitlab.com/kicad/libraries/kicad-symbols/-/issues/3131