Closed Bug 1187773 Opened 9 years ago Closed 9 years ago

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

Categories

(Firefox Build System :: General, defect)

x86_64
Windows 10
defect
Not set
normal

Tracking

(firefox42 fixed)

RESOLVED FIXED
mozilla42
Tracking Status
firefox42 --- fixed

People

(Reporter: xavier114fch, Assigned: m_kato)

References

Details

Attachments

(1 file)

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
Blocks: VC14
maybe, heapapi.h is conflict.  We should use js/HeapAPI.h and remove
Product: Firefox → Core
Status: UNCONFIRMED → NEW
Ever confirmed: true
Assignee: nobody → m_kato
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)
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+
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
Closed: 9 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla42
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: