¿Hay alguna forma de averiguar qué archivo de encabezado STL no se ha incluido directamente?

Nuestro producto utiliza C ++ como lenguaje de programación. Un problema molesto del uso de C ++ STL es que nos olvidamos de incluir los archivos de encabezado necesarios, ya que el archivo puede haberse incluido en algún otro encabezado de STL, la compilación pasa. Por ejemplo,

En la plataforma Mac usando Xcode, si usostd::auto_ptr sin incluirmemory.h pero incluyeiostream.h, la compilación pasará, pero fallará en la plataforma Android.

Pero no quiero mover el código a Android para una verificación de compilación para cada confirmación de cambio de código. Entonces, ¿hay alguna forma de evitar ese problema?

Edición 1: Sé que la mejor solución es no olvidar la inclusión del encabezado. Pero los desarrolladores cometen errores. Entonces, ¿hay alguna herramienta para ayudar a comprobarlo?

Edit 2: Seams no hay una solución ideal, así que usaré vim script para verificarlo en mi editor, la solución es similar ahttps://github.com/vim-scripts/vim-cpp-auto-include/blob/master/ftplugin/cpp_auto_include.vim

Respuestas a la pregunta(2)

Su respuesta a la pregunta