рдпрд╣ рдХрдорд╛рдВрдб рдХреНрд▓реИрдВрдЧ-рдЯрд┐рдбреА-3.5 рд╣реИ рдЬрд┐рд╕реЗ рд╣рдорд╛рд░реЗ рдХрдИ рдореБрдлреНрдд рдСрдирд▓рд╛рдЗрди рд╡рд░реНрдХрд╕реНрдЯреЗрд╢рди рдЬреИрд╕реЗ рдХрд┐ рдЙрдмрдВрдЯреВ рдСрдирд▓рд╛рдЗрди, рдлреЗрдбреЛрд░рд╛ рдСрдирд▓рд╛рдЗрди, рд╡рд┐рдВрдбреЛрдЬ рдСрдирд▓рд╛рдЗрди рдПрдореБрд▓реЗрдЯрд░ рдпрд╛ рдореИрдХ рдУрдПрд╕ рдСрдирд▓рд╛рдЗрди рдПрдореБрд▓реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдСрдирд╡рд░реНрдХреНрд╕ рдлреНрд░реА рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рдкреНрд░рджрд╛рддрд╛ рдореЗрдВ рдЪрд▓рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдХрд╛рд░реНрдпрдХреНрд░рдо:
рдирд╛рдо
рдХреНрд▓реИрдВрдЧ-рдЯрд┐рдбреА - рдХреНрд▓реИрдВрдЧ-рдЯрд┐рдбреА 3.5 рдХреЗ рд▓рд┐рдП рдореИрдиреБрдЕрд▓ рдкреЗрдЬ
рд╡рд░реНрдгрди
рдЙрдкрдпреЛрдЧ: рдмрдЬрдирд╛-рд╕реБрд╡реНрдпрд╡рд╕реНрдерд┐рдд [рд╡рд┐рдХрд▓реНрдк] [... ]
рд╡рд┐рдХрд▓реНрдк:
рдЖрдо рд╡рд┐рдХрд▓реНрдк:
-рдорджрдж - рдЙрдкрд▓рдмреНрдз рд╡рд┐рдХрд▓реНрдк рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ (-рд╣реЗрд▓реНрдк-рд╣рд┐рдбрди рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП)
-рд╕рд╣рд╛рдпрддрд╛ рд╕реВрдЪреА - рдЙрдкрд▓рдмреНрдз рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рд╕реВрдЪреА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ (-рд╕рд╣рд╛рдпрддрд╛-рд╕реВрдЪреА-рдЫрд┐рдкрд╛ рд╣реБрдЖ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП)
-рд╕рдВрд╕реНрдХрд░рдг - рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ
рдХреНрд▓реИрдВрдЧ-рд╕реБрд╡реНрдпрд╡рд╕реНрдерд┐рдд рд╡рд┐рдХрд▓реНрдк:
-рд╡рд┐рд╢реНрд▓реЗрд╖рдг-рдЕрд╕реНрдерд╛рдпреА-рдбреАрдЯрд░реНрд╕ - рдЕрд╕реНрдерд╛рдпреА рд╡рд┐рдзреНрд╡рдВрд╕рдХ-рдЬрд╛рдЧрд░реВрдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
рдХреНрд▓реИрдВрдЧ-рд╡рд┐рд╢реНрд▓реЗрд╖рдХ- рдЬрд╛рдБрдЪ рдХрд░рддрд╛ рд╣реИред
-рдЪреЗрдХ=- рд╡реИрдХрд▓реНрдкрд┐рдХ '-' рдХреЗ рд╕рд╛рде рдЧреНрд▓рдмреНрд╕ рдХреА рдЕрд▓реНрдкрд╡рд┐рд░рд╛рдо рд╕реЗ рдЕрд▓рдЧ рдХреА рдЧрдИ рд╕реВрдЪреА
рдЙрдкрд╕рд░реНрдЧ. рд╕реВрдЪреА рдореЗрдВ рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЗ рдХреНрд░рдо рдореЗрдВ рдЧреНрд▓рдмреНрд╕ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред '-' рдХреЗ рдмрд┐рдирд╛ рдЧреНрд▓рдмреНрд╕
рдЙрдкрд╕рд░реНрдЧ рд╕реЗрдЯ рдореЗрдВ рдореЗрд▓ рдЦрд╛рдиреЗ рд╡рд╛рд▓реЗ рдирд╛рдореЛрдВ рдХреЗ рд╕рд╛рде рдЪреЗрдХ рдЬреЛрдбрд╝реЗрдВ, '-' рдЙрдкрд╕рд░реНрдЧ рд╡рд╛рд▓реЗ рдЧреНрд▓рдмреНрд╕ рд╣рдЯрд╛ рджреЗрдВ
рд╕рдХреНрд╖рдо рдЪреЗрдХ рдХреЗ рд╕реЗрдЯ рд╕реЗ рдореЗрд▓ рдЦрд╛рдиреЗ рд╡рд╛рд▓реЗ рдирд╛рдореЛрдВ рдХреЗ рд╕рд╛рде рдЪреЗрдХред
-рдареАрдХ рдХрд░ - рдпрджрд┐ рд╕рдВрднрд╡ рд╣реЛ рддреЛ рдкрд╛рдИ рдЧрдИ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдареАрдХ рдХрд░реЗрдВред
-рд╣реЗрдбрд░-рдлрд╝рд┐рд▓реНрдЯрд░=- рдХреЗ рдирд╛рдореЛрдВ рд╕реЗ рдореЗрд▓ рдЦрд╛рдиреЗ рд╡рд╛рд▓реА рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐
рдЖрдЙрдЯрдкреБрдЯ рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХреНрд╕ рдХреЗ рд╣реЗрдбрд░ред рдкреНрд░рддреНрдпреЗрдХ рдХреА рдореБрдЦреНрдп рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдирд┐рджрд╛рди
рдЕрдиреБрд╡рд╛рдж рдЗрдХрд╛рдИ рд╣рдореЗрд╢рд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрддреА рд╣реИред рдХреЗ рд╕рд╛рде рдкреНрд░рдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ -рд▓рд╛рдЗрди рдлрд┐рд▓реНрдЯрд░.
-рд▓рд╛рдЗрди-рдлрд╝рд┐рд▓реНрдЯрд░=- рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЗрди рд░реЗрдВрдЬ рд╡рд╛рд▓реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд╕реВрдЪреА
рдЪреЗрддрд╛рд╡рдирд┐рдпрд╛рдБ. рдХреЗ рд╕рд╛рде рдкреНрд░рдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ -рд╣реЗрдбрд░-рдлрд╝рд┐рд▓реНрдЯрд░. рд╕реВрдЪреА рдХрд╛ рдкреНрд░рд╛рд░реВрдк рд╣реИ a
рд╡рд╕реНрддреБрдУрдВ рдХреА JSON рд╕рд░рдгреА:
[{"name":"file1.cpp","lines":[[1,3],[5,7]]}, {"name":"file2.h"}
]
-рд╕реВрдЪреА-рдЬрд╛рдБрдЪ - рд╕рднреА рд╕рдХреНрд╖рдо рдЬрд╛рдВрдЪреЛрдВ рдХреА рд╕реВрдЪреА рдмрдирд╛рдПрдВ рдФрд░ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВред рд╕рд╛рде рдЙрдкрдпреЛрдЧ
-рдЪреЗрдХ=рд╕рднреА рдЙрдкрд▓рдмреНрдз рдЪреЗрдХреЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП '*'ред
-рдкреА =- рдкрде рдмрдирд╛рдПрдБ
-p рдХрдВрдкрд╛рдЗрд▓ рдХрдорд╛рдВрдб рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ рдПрдХ рд╕реАрдПрдордХреЗ рдмрд┐рд▓реНрдб рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рд╣реЛ рд╕рдХрддреА рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдирд╛рдо рдХреА рдлрд╛рдЗрд▓ рд╣реЛрддреА рд╣реИ
Compil_commands.json рдореМрдЬреВрдж рд╣реИ (рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ) -DCMAKE_EXPORT_COMPILE_COMMANDS=ON рд╕реАрдПрдордХреЗ рд╡рд┐рдХрд▓реНрдк
рдЗрд╕ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП)ред рдЬрдм рдХреЛрдИ рдмрд┐рд▓реНрдб рдкрде рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдХреА рдЦреЛрдЬ рдХрд░реЗрдВ
Compil_commands.json рдкрд╣рд▓реЗ рдЗрдирдкреБрдЯ рдХреЗ рд╕рднреА рдореВрд▓ рдкрдереЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛
рдлрд╝рд╛рдЗрд▓ред рджреЗрдЦреЛ: http://clang.llvm.org/docs/HowToSetupToolingForLLVM.html рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП
рд╕реЛрд░реНрд╕ рдЯреНрд░реА рдкрд░ рдХреНрд▓реИрдВрдЧ рдЯреВрд▓рд┐рдВрдЧ рдХреА рд╕реНрдерд╛рдкрдирд╛ред
... рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдкрде рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВред рдпреЗ рд░рд╛рд╕реНрддреЗ рд╣реИрдВ
рд╕рдВрдХрд▓рди рдХрдорд╛рдВрдб рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рджреЗрдЦрд╛ рдЧрдпрд╛ред рдпрджрд┐ рдХрд┐рд╕реА рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдкрде рдирд┐рд░рдкреЗрдХреНрд╖ рд╣реИ, рддреЛ рдпрд╣
рд╕реАрдПрдордХреЗ рдХреЗ рд╕реНрд░реЛрдд рдкреЗрдбрд╝ рдореЗрдВ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред рдпрджрд┐ рдкрде рд╕рд╛рдкреЗрдХреНрд╖ рд╣реИ, рддреЛ рдзрд╛рд░рд╛
рд╡рд░реНрдХрд┐рдВрдЧ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдХреЛ рд╕реАрдПрдордХреЗ рд╕реЛрд░реНрд╕ рдЯреНрд░реА рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдлрд╛рдЗрд▓ рдПрдХ рдореЗрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП
рд╡рд░реНрддрдорд╛рди рдХрд╛рд░реНрдпрд╢реАрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреА рдЙрдкрдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ред рд░рд┐рд╢реНрддреЗрджрд╛рд░ рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ "./" рдЙрдкрд╕рд░реНрдЧ
рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рд▓реЗрдХрд┐рди рд╢реЗрд╖ рд╕рд╛рдкреЗрдХреНрд╖ рдкрде рдХрд╛ рдкреНрд░рддреНрдпрдп рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП
рд╕рдВрдХрд▓рди рдХрдорд╛рдВрдб рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдПрдХ рдкрдеред
onworks.net рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ clang-tidy-3.5 рдХрд╛ рдСрдирд▓рд╛рдЗрди рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ