Hi Geniuses, I'm compiling and learning Firefox 65 for awhile. After one day I update Visual Studio and try to rebuild the whole browser again. The compile process always failed at
``` 0:14.47 Assembling: d:/mozilla-source/mozilla-release/obj-firefox-win32-release/config/external/ffi/win64.asm 0:16.59 [0m[0m[1m[32m Compiling[0m serde v1.0.80 0:16.69 modules/brotli 0:24.03 [0m[0m[1m[32m Compiling[0m mozurl v0.0.1 (D:\mozilla-source\mozilla-release\netwerk\base\mozurl) 0:26.90 [0m[0m[1m[32m Compiling[0m cssparser v0.25.0 0:28.03 d:/mozilla-source/mozilla-release/media/libjpeg/jcphuff.c(177,21): warning: incompatible pointer types passing 'int *' to parameter of type 'unsigned long *' [-Wincompatible-pointer-types] 0:28.09 _BitScanForward64(&result, *x); 0:28.13 ^~~~~~~ 0:28.17 c:\Program Files\LLVM\lib\clang\8.0.1\include\intrin.h(302,48): note: passing argument to parameter '_Index' here 0:28.23 unsigned char _BitScanForward64(unsigned long *_Index, unsigned __int64 _Mask); 0:28.28 ^ 0:28.49 1 warning generated. 0:29.45 [0m[1m[38;5;9merror[E0506][0m[0m[1m[38;5;15m: cannot assign to `self.input.cached_token` because it is borrowed[0m 0:29.45 [0m [0m[0m[1m[38;5;14m--> [0m[0mD:\mozilla-source\mozilla-release\third_party\rust\cssparser\src\parser.rs:574:17[0m 0:29.46 [0m [0m[0m[1m[38;5;14m|[0m 0:29.47 [0m[1m[38;5;14m549[0m[0m [0m[0m[1m[38;5;14m| [0m[0m pub fn next_including_whitespace_and_comments(&mut self) -> Result<&Token<'i>, BasicParseError<'i>> {[0m [0m[0m[1m[38;5;14m-[0m[0m [0m[0m[1m[38;5;14mlet's call the lifetime of this reference `'1`[0m 0:29.49 [0m[1m[38;5;14m...[0m 0:29.49 [0m[1m[38;5;14m562[0m[0m [0m[0m[1m[38;5;14m| [0m[0m Some(ref cached_token)[0m 0:29.49 [0m [0m[0m[1m[38;5;14m| [0m[0m [0m[0m[1m[38;5;14m----------------[0m[0m [0m[0m[1m[38;5;14mborrow of `self.input.cached_token` occurs here[0m 0:29.49 [0m[1m[38;5;14m...[0m 0:29.49 [0m[1m[38;5;14m574[0m[0m [0m[0m[1m[38;5;14m| [0m[0m self.input.cached_token = Some(CachedToken {[0m 0:29.49 [0m [0m[0m[1m[38;5;14m| [0m[0m [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9massignment to borrowed `self.input.cached_token` occurs here[0m 0:29.49 [0m[1m[38;5;14m...[0m 0:29.49 [0m[1m[38;5;14m586[0m[0m [0m[0m[1m[38;5;14m| [0m[0m Ok(token)[0m 0:29.49 [0m [0m[0m[1m[38;5;14m| [0m[0m [0m[0m[1m[38;5;14m---------[0m[0m [0m[0m[1m[38;5;14mreturning this value requires that `self.input.cached_token.0` is borrowed for `'1`[0m 0:30.13 [0m[1m[38;5;9merror[0m[0m[1m[38;5;15m: aborting due to previous error[0m 0:30.13 [0m[1m[38;5;15mFor more information about this error, try `rustc --explain E0506`.[0m 0:30.25 [0m[0m[1m[31merror:[0m Could not compile `cssparser`. 0:30.25 [0m[0m[1m[33mwarning:[0m build failed, waiting for other jobs to finish... 0:30.61 modules/woff2 0:32.33 In file included from d:/mozilla-source/mozilla-release/obj-firefox-win32-release/modules/woff2/Unified_cpp_modules_woff20.cpp:29: 0:32.69 d:/mozilla-source/mozilla-release/modules/woff2/src/woff2_dec.cc(1177,12): warning: unused variable 'dst_offset' [-Wunused-variable] 0:32.76 uint64_t dst_offset = first_table_offset; 0:32.84 ^ 0:35.59 modules/xz-embedded 0:38.76 1 warning generated. 0:40.23 media/libvorbis 0:40.47 media/libmkv 0:40.86 d:/mozilla-source/mozilla-release/media/libmkv/EbmlBufferWriter.c(43,13): warning: unused function '_Serialize' [-Wunused-function] 0:40.87 static void _Serialize(EbmlGlobal *glob, const unsigned char *p, const unsigned char *q) { 0:40.87 ^ 0:40.95 1 warning generated. 0:42.15 media/libvpx 0:46.74 media/libaom 0:46.90 [0m[0m[1m[31merror:[0m build failed 0:47.04 mozmake.EXE[4]: *** [d:/mozilla-source/mozilla-release/config/rules.mk:1052: force-cargo-library-build] Error 101 0:47.06 mozmake.EXE[3]: *** [d:/mozilla-source/mozilla-release/config/recurse.mk:74: toolkit/library/rust/target] Error 2 0:47.06 mozmake.EXE[3]: *** Waiting for unfinished jobs.... 2:07.13 3 warnings generated. 2:53.36 d:/mozilla-source/mozilla-release/intl/icu/source/common/unistr.cpp(1976,13): warning: unused function 'uprv_UnicodeStringDummy' [-Wunused-function] 2:53.37 static void uprv_UnicodeStringDummy(void) { 2:53.37 ^ 2:54.96 1 warning generated. 3:28.83 d:/mozilla-source/mozilla-release/media/libvpx/libvpx/vpx_ports/x86_abi_support.asm: panic: assertion cv8_state.source_files != NULL failed at output/codeview.c:517 3:28.83 mozmake.EXE[4]: *** [d:/mozilla-source/mozilla-release/config/rules.mk:807: x86_abi_support.obj] Error 3 3:28.83 mozmake.EXE[4]: *** Waiting for unfinished jobs.... 3:37.56 mozmake.EXE[3]: *** [d:/mozilla-source/mozilla-release/config/recurse.mk:74: media/libvpx/target] Error 2 3:37.56 mozmake.EXE[2]: *** [d:/mozilla-source/mozilla-release/config/recurse.mk:34: compile] Error 2 3:37.58 mozmake.EXE[1]: *** [d:/mozilla-source/mozilla-release/config/rules.mk:431: default] Error 2 3:37.59 mozmake.EXE: *** [client.mk:125: build] Error 2 3:37.65 192 compiler warnings present. ``` It seems a third party cssparser failed to build. My desktop environment is Window 10 Visual Studio 2017 Visual Studio 2019 Latest mozilla build tool Success to run $ mach bootstrap $ mach config $ mach clobber When I try to run build. It will failed with the upper errors. $ mach build My rust tool chain version is $ rustup -V rustup 1.19.0 (2af131cf9 2019-09-08) I have tried to fix the rust relative error E0506. But the compile process will failed in other places. Is it relative to update rust toolchain not match with version 65? BTW my current environment can successfully build Firefox 68. This error drive me crazy. Does any one can helps or provide any information? Thanks in advance! Best regards, Edwin _______________________________________________ dev-builds mailing list dev-builds@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-builds