Bug 75396

Summary: r103850 doesn't build due to undeclared identifier 'CSSPropertyWebkitDashboardRegion'
Product: WebKit Reporter: Keaton Mowery <kmowery>
Component: WebCore Misc.Assignee: Nobody <webkit-unassigned>
Status: RESOLVED WORKSFORME    
Severity: Normal CC: aroben, kling
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Mac (Intel)   
OS: OS X 10.7   
Attachments:
Description Flags
Generated CSSPropertyNames.h none

Description Keaton Mowery 2011-12-30 13:20:17 PST
Tested against r103850.

"./Tools/Scripts/build-webkit" fails with compiler errors on OSX 10.7 Lion with XCode 4.2.1:

CompileC /Users/kmowery/src/builds/webkit-clang/WebKitBuild/WebCore.build/Release/WebCore.build/Objects-normal/x86_64/CSSComputedStyleDeclaration.o css/CSSComputedStyleDeclaration.cpp normal x86_64 c++ com.apple.compilers.llvm.clang.1_0.compiler
    cd /Users/kmowery/src/builds/webkit-clang/Source/WebCore
    setenv LANG en_US.US-ASCII
    /Developer/usr/bin/clang -x c++ -arch x86_64 -fmessage-length=0 -fdiagnostics-print-source-range-info -fdiagnostics-show-category=id -fdiagnostics-parseable-fixits -Wno-trigraphs -fno-exceptions -fno-rtti -fpascal-strings -O2 -Werror -Wmissing-prototypes -Wno-return-type -Wnon-virtual-dtor -Wparentheses -Wswitch -Wno-unused-parameter -Wno-unused-variable -Wunused-value -Wno-shorten-64-to-32 -Wnewline-eof -Wno-c++0x-extensions -DNDEBUG -DENABLE_3D_RENDERING -DENABLE_BLOB -DENABLE_CHANNEL_MESSAGING -DENABLE_CLIENT_BASED_GEOLOCATION -DENABLE_CSS_FILTERS -DENABLE_CSS_GRID_LAYOUT -DENABLE_CSS_SHADERS -DENABLE_DATALIST -DENABLE_DETAILS -DENABLE_FILTERS -DENABLE_FULLSCREEN_API -DENABLE_GEOLOCATION -DENABLE_ICONDATABASE -DENABLE_JAVASCRIPT_DEBUGGER -DENABLE_MATHML -DENABLE_METER_TAG -DENABLE_NOTIFICATIONS -DENABLE_PROGRESS_TAG -DENABLE_REQUEST_ANIMATION_FRAME -DENABLE_SHARED_WORKERS -DENABLE_SQL_DATABASE -DENABLE_SVG -DENABLE_SVG_DOM_OBJC_BINDINGS -DENABLE_SVG_FONTS -DENABLE_VIDEO -DENABLE_VIDEO_TRACK -DENABLE_WEBGL -DENABLE_WEB_AUDIO -DENABLE_WEB_SOCKETS -DENABLE_WORKERS -DENABLE_XSLT -DWEBKIT_VERSION_MIN_REQUIRED=WEBKIT_VERSION_LATEST -fasm-blocks -mmacosx-version-min=10.7 -gdwarf-2 -fvisibility-inlines-hidden -fno-threadsafe-statics -Wno-sign-conversion -I/Users/kmowery/src/builds/webkit-clang/WebKitBuild/WebCore.build/Release/WebCore.build/WebCore.hmap -I/Users/kmowery/src/builds/webkit-clang/WebKitBuild/Release/include -IForwardingHeaders -Iicu -I/usr/include/libxslt -I/usr/include/libxml2 -I/Users/kmowery/src/builds/webkit-clang/WebKitBuild/Release/DerivedSources/WebCore -I/Users/kmowery/src/builds/webkit-clang/WebKitBuild/Release/usr/local/include -I/Users/kmowery/src/builds/webkit-clang/WebKitBuild/WebCore.build/Release/WebCore.build/DerivedSources/x86_64 -I/Users/kmowery/src/builds/webkit-clang/WebKitBuild/WebCore.build/Release/WebCore.build/DerivedSources -Wall -Wextra -Wcast-qual -Wchar-subscripts -Wextra-tokens -Wformat=2 -Winit-self -Wmissing-format-attribute -Wmissing-noreturn -Wpacked -Wpointer-arith -Wredundant-decls -Wundef -Wwrite-strings -Wglobal-constructors -Wexit-time-destructors -F/Users/kmowery/src/builds/webkit-clang/WebKitBuild/Release -F/System/Library/Frameworks/Carbon.framework/Frameworks -F/System/Library/Frameworks/ApplicationServices.framework/Frameworks -F/System/Library/Frameworks/CoreServices.framework/Frameworks -F/System/Library/PrivateFrameworks -include /var/folders/2j/4dcc9sy915z774w9789765p00000gn/C/com.apple.Xcode.501/SharedPrecompiledHeaders/WebCorePrefix-anmkmnzlziaszialdmlayndalyli/WebCorePrefix.h -MMD -MT dependencies -MF /Users/kmowery/src/builds/webkit-clang/WebKitBuild/WebCore.build/Release/WebCore.build/Objects-normal/x86_64/CSSComputedStyleDeclaration.d -c /Users/kmowery/src/builds/webkit-clang/Source/WebCore/css/CSSComputedStyleDeclaration.cpp -o /Users/kmowery/src/builds/webkit-clang/WebKitBuild/WebCore.build/Release/WebCore.build/Objects-normal/x86_64/CSSComputedStyleDeclaration.o
/Users/kmowery/src/builds/webkit-clang/Source/WebCore/css/CSSComputedStyleDeclaration.cpp:216:5: error: use of undeclared identifier 'CSSPropertyWebkitDashboardRegion' [3]
     CSSPropertyWebkitDashboardRegion,
     ^
/Users/kmowery/src/builds/webkit-clang/Source/WebCore/css/CSSComputedStyleDeclaration.cpp:342:40:{342:40-342:76}: error: no matching function for call to 'ArrayLengthHelperFunction' [3]
 const unsigned numComputedProperties = WTF_ARRAY_LENGTH(computedProperties);
                                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/kmowery/src/builds/webkit-clang/WebKitBuild/Release/JavaScriptCore.framework/PrivateHeaders/StdLibExtras.h:142:40: note: instantiated from:
 #define WTF_ARRAY_LENGTH(array) sizeof(::WTF::ArrayLengthHelperFunction(array))
                                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/kmowery/src/builds/webkit-clang/WebKitBuild/Release/JavaScriptCore.framework/PrivateHeaders/StdLibExtras.h:141:42: note: candidate template ignored: failed template argument deduction [3]
 template<typename T, size_t Size> char (&ArrayLengthHelperFunction(T (&)[Size]))[Size];
                                          ^
/Users/kmowery/src/builds/webkit-clang/Source/WebCore/css/CSSComputedStyleDeclaration.cpp:1835:14: error: use of undeclared identifier 'CSSPropertyWebkitDashboardRegion' [3]
         case CSSPropertyWebkitDashboardRegion:
              ^
3 errors generated.
Comment 1 Andreas Kling 2011-12-31 19:57:55 PST
"./Tools/Scripts/build-webkit" and nothing but? That's curious..

Does your WebKitBuild/Release/DerivedSources/WebCore/CSSPropertyNames.h not contain CSSPropertyWebkitDashboardRegion?

If not, I guess something could be going wrong with the snippet in Source/WebCore/DerivedSources.make that extracts the ENABLE_DASHBOARD_SUPPORT configuration from Platform.h.

Is there something special about your system (no GCC installed perhaps)?
Comment 2 Keaton Mowery 2011-12-31 21:16:19 PST
Created attachment 120840 [details]
Generated CSSPropertyNames.h
Comment 3 Keaton Mowery 2011-12-31 21:19:09 PST
> Does your WebKitBuild/Release/DerivedSources/WebCore/CSSPropertyNames.h not contain CSSPropertyWebkitDashboardRegion?

It does not! I've attached a copy for review.

> Is there something special about your system (no GCC installed perhaps)?

I can't think of anything offhand. I'd be happy to investigate any potential leads, though. llvm-gcc is installed, as per default on OSX:

$ gcc -v
Using built-in specs.
Target: i686-apple-darwin11
Configured with: /private/var/tmp/llvmgcc42/llvmgcc42-2336.1~22/src/configure --disable-checking --enable-werror --prefix=/Developer/usr/llvm-gcc-4.2 --mandir=/share/man --enable-languages=c,objc,c++,obj-c++ --program-prefix=llvm- --program-transform-name=/^[cg][^.-]*$/s/$/-4.2/ --with-slibdir=/usr/lib --build=i686-apple-darwin11 --enable-llvm=/private/var/tmp/llvmgcc42/llvmgcc42-2336.1~22/dst-llvmCore/Developer/usr/local --program-prefix=i686-apple-darwin11- --host=x86_64-apple-darwin11 --target=i686-apple-darwin11 --with-gxx-include-dir=/usr/include/c++/4.2.1
Thread model: posix
gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.1.00)
Comment 4 Andreas Kling 2011-12-31 21:21:54 PST
Ho hum. Nothing suspcious there.

Did this use to work on your system, or is this the first time you're building WebKit perhaps?
Comment 5 Keaton Mowery 2011-12-31 22:20:50 PST
First time for me. I had been attempting to build WebKit with LLVM head, but I checked out a second copy to ensure that it builds properly with the stock compiler, which is where this error is occurring.
Comment 6 Adam Roben (:aroben) 2012-01-03 07:43:18 PST
Can you please attach a full build log? I suspect there's some earlier error that's causing this.
Comment 7 Keaton Mowery 2012-01-09 14:57:40 PST
Somehow, while I was tracking this issue down, it went away entirely.  I haven't been able to reproduce it. Webkit (both r103850 and today's head) builds properly.

The two things I did (if anyone finds this issue later) were update my webkit repo and clear the XCode precompiled headers directory.

I've closed the bug as WORKSFORME. I'll re-open it if 1) the issue appears again and 2) I find some evidence that it's not a transient issue.

Thanks for your help.