@@ -39,6 +39,22 @@ add_project_arguments('-DVERSION_MICRO=' + ml_agent_version[2], language: ['c',
3939
4040# Define warning flags for c and cpp
4141warning_flags = [
42+ ' -Werror=address' ,
43+ ' -Werror=array-bounds' ,
44+ ' -Werror=empty-body' ,
45+ ' -Werror=format=2' ,
46+ ' -Werror=init-self' ,
47+ ' -Werror=int-to-pointer-cast' ,
48+ ' -Werror=main' ,
49+ ' -Werror=missing-braces' ,
50+ ' -Werror=nonnull' ,
51+ ' -Werror=return-type' ,
52+ ' -Werror=sequence-point' ,
53+ ' -Werror=trigraphs' ,
54+ ' -Werror=write-strings' ,
55+ ' -Wredundant-decls' ,
56+ ' -Wmissing-braces' ,
57+ ' -Wmaybe-uninitialized' ,
4258 ' -Wwrite-strings' ,
4359 ' -Wformat' ,
4460 ' -Wformat-nonliteral' ,
@@ -51,6 +67,9 @@ warning_flags = [
5167]
5268
5369warning_c_flags = [
70+ ' -Werror=implicit' ,
71+ ' -Werror=pointer-to-int-cast' ,
72+ ' -Werror=undef' ,
5473 ' -Wmissing-declarations' ,
5574 ' -Wmissing-include-dirs' ,
5675 ' -Wmissing-prototypes' ,
@@ -65,20 +84,9 @@ if glib_dep.version() < '2.67.1'
6584endif
6685
6786# Setup warning flags for c and cpp
68- foreach extra_arg : warning_flags
69- if cc.has_argument (extra_arg)
70- add_project_arguments ([extra_arg], language : ' c' )
71- endif
72- if cxx.has_argument (extra_arg)
73- add_project_arguments ([extra_arg], language : ' cpp' )
74- endif
75- endforeach
76-
77- foreach extra_arg : warning_c_flags
78- if cc.has_argument (extra_arg)
79- add_project_arguments ([extra_arg], language : ' c' )
80- endif
81- endforeach
87+ add_project_arguments (cc.get_supported_arguments(warning_c_flags), language : ' c' )
88+ add_project_arguments (cc.get_supported_arguments(warning_flags), language : ' c' )
89+ add_project_arguments (cxx.get_supported_arguments(warning_flags), language : ' cpp' )
8290
8391# Set project args
8492if get_option (' enable-tizen' )
0 commit comments