Bug 188040

Summary: REGRESSION(r234248) [Win] testapi.c: nonstandard extension used: non-constant aggregate initializer
Product: WebKit Reporter: Fujii Hironori <Hironori.Fujii>
Component: JavaScriptCoreAssignee: Fujii Hironori <Hironori.Fujii>
Status: RESOLVED FIXED    
Severity: Normal CC: ews-watchlist, keith_miller, mark.lam, msaboff, saam, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch none

Description Fujii Hironori 2018-07-26 01:59:13 PDT
REGRESSION(r234248) [Win] testapi.c: nonstandard extension used: non-constant aggregate initializer

Since https://trac.webkit.org/changeset/234248/

https://build.webkit.org/builders/Apple%20Win%20Release%20%28Build%29/builds/10869

C:\cygwin\home\buildbot\slave\win-release\build\Source\JavaScriptCore\API\tests\testapi.c(1209): error C2220: warning treated as error - no 'object' file generated [C:\cygwin\home\buildbot\slave\win-release\build\WebKitBuild\Release\Source\JavaScriptCore\shell\testapiLib.vcxproj]
C:\cygwin\home\buildbot\slave\win-release\build\Source\JavaScriptCore\API\tests\testapi.c(1209): warning C4090: 'function': different 'const' qualifiers [C:\cygwin\home\buildbot\slave\win-release\build\WebKitBuild\Release\Source\JavaScriptCore\shell\testapiLib.vcxproj]
C:\cygwin\home\buildbot\slave\win-release\build\Source\JavaScriptCore\API\tests\testapi.c(1801): warning C4204: nonstandard extension used: non-constant aggregate initializer [C:\cygwin\home\buildbot\slave\win-release\build\WebKitBuild\Release\Source\JavaScriptCore\shell\testapiLib.vcxproj]
C:\cygwin\home\buildbot\slave\win-release\build\Source\JavaScriptCore\API\tests\testapi.c(1805): warning C4204: nonstandard extension used: non-constant aggregate initializer [C:\cygwin\home\buildbot\slave\win-release\build\WebKitBuild\Release\Source\JavaScriptCore\shell\testapiLib.vcxproj]
C:\cygwin\home\buildbot\slave\win-release\build\Source\JavaScriptCore\API\tests\testapi.c(1850): warning C4204: nonstandard extension used: non-constant aggregate initializer [C:\cygwin\home\buildbot\slave\win-release\build\WebKitBuild\Release\Source\JavaScriptCore\shell\testapiLib.vcxproj]
C:\cygwin\home\buildbot\slave\win-release\build\Source\JavaScriptCore\API\tests\testapi.c(1865): warning C4204: nonstandard extension used: non-constant aggregate initializer [C:\cygwin\home\buildbot\slave\win-release\build\WebKitBuild\Release\Source\JavaScriptCore\shell\testapiLib.vcxproj]
C:\cygwin\home\buildbot\slave\win-release\build\Source\JavaScriptCore\API\tests\testapi.c(1871): warning C4204: nonstandard extension used: non-constant aggregate initializer [C:\cygwin\home\buildbot\slave\win-release\build\WebKitBuild\Release\Source\JavaScriptCore\shell\testapiLib.vcxproj]
C:\cygwin\home\buildbot\slave\win-release\build\Source\JavaScriptCore\API\tests\testapi.c(1878): warning C4204: nonstandard extension used: non-constant aggregate initializer [C:\cygwin\home\buildbot\slave\win-release\build\WebKitBuild\Release\Source\JavaScriptCore\shell\testapiLib.vcxproj]
Comment 1 Fujii Hironori 2018-07-26 02:03:14 PDT
AppleWin port is using /WX.

> # Warnings as errors (ignore narrowing conversions)
> add_compile_options(/WX /Wv:18)
Comment 2 Fujii Hironori 2018-07-26 02:14:02 PDT
> testapi.c(1209): warning C4090: 'function': different 'const' qualifiers

Accoring to the following page, this is a bug of MSVC.

Why does Visual C++ warn on implicit cast from const void ** to void * in C, but not in C++? - Stack Overflow
https://stackoverflow.com/questions/10403713/why-does-visual-c-warn-on-implicit-cast-from-const-void-to-void-in-c-but
Comment 3 Fujii Hironori 2018-07-26 02:27:57 PDT
Created attachment 345836 [details]
Patch
Comment 4 Fujii Hironori 2018-07-26 02:31:55 PDT
Committed r234252: <https://trac.webkit.org/changeset/234252>
Comment 5 Radar WebKit Bug Importer 2018-07-26 02:32:18 PDT
<rdar://problem/42617455>