Skip to content

Commit 9b8dbe2

Browse files
authored
[libc][complex] Fix compiler warnings for usage of complex.h header. (#112282)
1 parent 6277465 commit 9b8dbe2

File tree

1 file changed

+17
-5
lines changed

1 file changed

+17
-5
lines changed

libc/cmake/modules/LLVMLibCCompileOptionRules.cmake

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -153,8 +153,13 @@ function(_get_common_compile_options output_var flags)
153153
list(APPEND compile_options "-Wconversion")
154154
list(APPEND compile_options "-Wno-sign-conversion")
155155
# Silence this warning because _Complex is a part of C99.
156-
list(APPEND compile_options "-Wno-c99-extensions")
157-
list(APPEND compile_options "-Wno-pedantic")
156+
if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
157+
list(APPEND compile_options "-fext-numeric-literals")
158+
list(APPEND compile_options "-Wno-pedantic")
159+
else()
160+
list(APPEND compile_options "-Wno-c99-extensions")
161+
list(APPEND compile_options "-Wno-gnu-imaginary-constant")
162+
endif()
158163
list(APPEND compile_options "-Wimplicit-fallthrough")
159164
list(APPEND compile_options "-Wwrite-strings")
160165
list(APPEND compile_options "-Wextra-semi")
@@ -210,7 +215,7 @@ function(_get_common_test_compile_options output_var c_test flags)
210215
list(APPEND compile_options "-fno-exceptions")
211216
list(APPEND compile_options "-fno-unwind-tables")
212217
list(APPEND compile_options "-fno-asynchronous-unwind-tables")
213-
if(NOT ${c_test})
218+
if(NOT c_test)
214219
list(APPEND compile_options "-fno-rtti")
215220
endif()
216221
endif()
@@ -231,8 +236,15 @@ function(_get_common_test_compile_options output_var c_test flags)
231236
# list(APPEND compile_options "-Wwrite-strings")
232237
# list(APPEND compile_options "-Wextra-semi")
233238
# Silence this warning because _Complex is a part of C99.
234-
list(APPEND compile_options "-Wno-c99-extensions")
235-
list(APPEND compile_options "-Wno-pedantic")
239+
if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
240+
if(NOT c_test)
241+
list(APPEND compile_options "-fext-numeric-literals")
242+
list(APPEND compile_options "-Wno-pedantic")
243+
endif()
244+
else()
245+
list(APPEND compile_options "-Wno-c99-extensions")
246+
list(APPEND compile_options "-Wno-gnu-imaginary-constant")
247+
endif()
236248
# if(NOT CMAKE_COMPILER_IS_GNUCXX)
237249
# list(APPEND compile_options "-Wnewline-eof")
238250
# list(APPEND compile_options "-Wnonportable-system-include-path")

0 commit comments

Comments
 (0)