There is a typo in your first paragraph: “Soild”
A downloadable extension
Historically GameMaker instances only had a single flag ("solid"), which was mutually exclusive with filtering instances by their type/parent, but, with introduction of collision list functions, we can do better, allowing to filter by type AND an arbitrary set of flags.
So, for instance, you can check whether your character is standing on a slippery solid block, or whether that block is jump-through, or find the nearest airborne target in a tower defense game, or many other uses.
See the demo project for an example!
GMS1 notes: When importing the extension alone, subsequently import the "collision_list_funcs" extension from its included files.
GMS2 notes: If using the demo, remove the "collision_list_funcs" extension after importing the project - it is only used to workaround an issue with GMS1.
Click download now to get access to the following files: