There is no permanent list, because services change their rules constantly and every public number has its own history. But the pattern is consistent enough to save you a lot of guessing.
Usually fine
Smaller sites, forums, marketplaces, newsletters, trials, developer sandboxes and most one-off sign-ups accept public numbers without complaint. If a service only wants to know the number exists, it will generally work.
Often blocked
Services that treat the phone number as your identity tend to reject shared numbers: WhatsApp, Telegram, and most banking and payment apps. They check the number against databases of bulk-SMS ranges, and a public number is usually on one. You will often see the request succeed with no code ever sent.
How to check before you commit
The fastest signal is evidence. Each service page here lists numbers that have recently received a message from that service — if codes from it are arriving, the service is sending to these ranges right now. If a service has no recent messages at all, that is a strong hint it is blocking them.
If the first number fails
Try a second and a third before concluding the service blocks public numbers entirely. Numbers differ: one may already be registered while another is clean. Prefer numbers with fewer stored messages, since they have been used less.