It's really not about whether bad things would happen or not. It's about what is the correct decision. I define an interface for a box. It has methods push() and pull(). I implement a wooden box that conforms to this interface. Many happy users push and pull my box via the interface all day. Someone comes along and implements a metal box that conforms to my interface, so that users can push and pull a metal box. I sue that person and win. Does this sound correct to you?
What bad things would happen?
* Compiling against any C header files, such as kernel headers, is called into question. This has massive ramifications because of many for-profit businesses that compile against the headers of GPL code, as is standard practice.
* Amazon S3 API is widely implemented by other cloud storage providers. Sharing an API between products makes it easy for customers to switch one application between different providers.
* This is copyright, not patent. Which means there is no requirement to register a design, no oversight and no cost.
* It could cause a rush of people just writing obvious API combinations to be the one who "got there first" and potentially harm their competition.
https://www.publicknowledge.org/news-blog/blogs/why-you-cant...