Parse line numbers in warning messages
Create a compiler plugin
Open quickfix window when there are warnings
Setting to decide if quickfix window is open on warnings
Detect the type of error (quickfix window)
Mark lines with errors or warnings (in the source file)

Place 'sign's on the lines with errors or warnings.