Failed to compile Unified_cpp_js_ipc0.cpp: error C4430: missing type specifier - int assumed. Note: C++ does not support default-int

RESOLVED FIXED in Firefox 42

Status

RESOLVED FIXED
3 years ago
7 months ago

People

(Reporter: xavier114fch, Assigned: m_kato)

Tracking

Trunk
mozilla42
x86_64
Windows 10

Firefox Tracking Flags

(firefox42 fixed)

Details

Attachments

(1 attachment)

(Reporter)

Description

3 years ago
Compiled Trunk using VS 2015 RTM and Windows 10 SDK RTM came with the following error.

 1:48.32 Unified_cpp_js_ipc0.cpp
 1:48.32 C:\Program Files (x86)\Windows Kits\10\include\10.0.10240.0\um\winbase.h(932): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
 1:48.32 C:\Program Files (x86)\Windows Kits\10\include\10.0.10240.0\um\winbase.h(932): error C2146: syntax error: missing ';' before identifier 'HGLOBAL'
 1:48.32 C:\Program Files (x86)\Windows Kits\10\include\10.0.10240.0\um\winbase.h(942): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
 1:48.32 C:\Program Files (x86)\Windows Kits\10\include\10.0.10240.0\um\winbase.h(942): error C2146: syntax error: missing ';' before identifier 'HGLOBAL'
 1:48.34 C:\Program Files (x86)\Windows Kits\10\include\10.0.10240.0\um\winbase.h(1043): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
 1:48.36 C:\Program Files (x86)\Windows Kits\10\include\10.0.10240.0\um\winbase.h(1043): error C2146: syntax error: missing ';' before identifier 'HLOCAL'
 1:48.37 C:\Program Files (x86)\Windows Kits\10\include\10.0.10240.0\um\winbase.h(1053): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
 1:48.37 C:\Program Files (x86)\Windows Kits\10\include\10.0.10240.0\um\winbase.h(1053): error C2146: syntax error: missing ';' before identifier 'HLOCAL'
 1:48.37
 1:48.38 In the directory  /h/mozilla-inbound/obj/js/ipc
 1:48.39 The following command failed to execute properly:
 1:48.39 h:/mozilla-inbound/obj/_virtualenv/Scripts/python.exe -m mozbuild.action.cl cl -FoUnified_cpp_js_ipc0.obj -c -DWIN32_LEAN_AND_MEAN -D_WIN32 -DWIN32 -D_CRT_RAND_S -DCERT_CHAIN_PARA_HAS_EXTRA_FIELDS -DOS_WIN=1 -D_UNICODE -DCHROMIUM_BUILD -DU_STATIC_IMPLEMENTATION -DUNICODE -DNOMINMAX -D_WINDOWS -D_SECURE_ATL -DCOMPILER_MSVC -DBIN_SUFFIX=".exe" -DSTATIC_EXPORTABLE_JS_API -DMOZILLA_INTERNAL_API -DIMPL_LIBXUL -DAB_CD=en-US -DNO_NSPR_10_SUPPORT -Ih:/mozilla-inbound/js/ipc -I. -Ih:/mozilla-inbound/obj/ipc/ipdl/_ipdlheaders -Ih:/mozilla-inbound/ipc/chromium/src -Ih:/mozilla-inbound/ipc/glue -Ih:/mozilla-inbound/dom/base -Ih:/mozilla-inbound/js/ipc -Ih:/mozilla-inbound/js/public -Ih:/mozilla-inbound/js/src -Ih:/mozilla-inbound/js/xpconnect/src -Ih:/mozilla-inbound/js/xpconnect/wrappers -I../../dist/include -Ih:/mozilla-inbound/obj/dist/include/nspr -Ih:/mozilla-inbound/obj/dist/include/nss -MD -FI ../../dist/include/mozilla-config.h -DMOZILLA_CLIENT -TP -nologo -Wv:18 -Zc:sizedDealloc- -wd4091 -D_HAS_EXCEPTIONS=0 -DNOMINMAX -W3 -Gy -FS -wd4251 -wd4244 -wd4267 -wd4345 -wd4351 -wd4482 -wd4800 -wd4819 -we4553 -GR- -DNDEBUG -DTRIMMED -Zi -UDEBUG -DNDEBUG -O1 -Oi -Oy -Fdgenerated.pdb h:/mozilla-inbound/obj/js/ipc/Unified_cpp_js_ipc0.cpp
 1:48.39 h:/mozilla-inbound/config/rules.mk:958: recipe for target 'Unified_cpp_js_ipc0.obj' failed
 1:48.39 mozmake.EXE[5]: *** [Unified_cpp_js_ipc0.obj] Error 1
 1:48.40 h:/mozilla-inbound/config/recurse.mk:71: recipe for target 'js/ipc/target' failed
 1:48.40 mozmake.EXE[4]: *** [js/ipc/target] Error 2
(Reporter)

Updated

3 years ago
Blocks: 1119082
(Assignee)

Comment 1

3 years ago
maybe, heapapi.h is conflict.  We should use js/HeapAPI.h and remove
(Assignee)

Updated

3 years ago
Component: Build Config → Build Config
Product: Firefox → Core
(Assignee)

Updated

3 years ago
Status: UNCONFIRMED → NEW
Ever confirmed: true
(Assignee)

Updated

3 years ago
Assignee: nobody → m_kato
(Assignee)

Comment 2

3 years ago
Created attachment 8640330 [details] [diff] [review]
Don't include heapapi.h from js/public
(Assignee)

Comment 3

3 years ago
Comment on attachment 8640330 [details] [diff] [review]
Don't include heapapi.h from js/public

Since Windows SDK has HeapAPI.h header, it is conflict of js/public/HeapAPI.h header.
Attachment #8640330 - Flags: review?(jorendorff)
(Assignee)

Comment 4

3 years ago
winbase.h includes heapapi.h, but On VS2015, is tries to including from js/public unfortunately.
Comment on attachment 8640330 [details] [diff] [review]
Don't include heapapi.h from js/public

Review of attachment 8640330 [details] [diff] [review]:
-----------------------------------------------------------------

Fine with me, if it builds.

I'm not the best person to review this, though. It's not clear to me how js/ipc could possibly build without access to the headers in js/public.
Attachment #8640330 - Flags: review?(jorendorff) → review+
(Assignee)

Comment 6

3 years ago
js/public is exported to $(OBJDIR)/dist/include, so js/ipc should not use LOCALINCLUDE.
https://hg.mozilla.org/mozilla-central/rev/206c93851f43
Status: NEW → RESOLVED
Last Resolved: 3 years ago
status-firefox42: --- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla42

Updated

7 months ago
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.