Skip to content

Commit

Permalink
Upgrade rust to version 1.31.1.
Browse files Browse the repository at this point in the history
Pkgsrc changes:
 * Sadly, I had to reinstate the "make tar files" rust code to make
   it possible to build cross-compiled bootstrap kits.
 * Add an adjustable "BUILD_TARGET", "dist" for cross-building
   a bootstrap kit, "build" for a normal native build.
 * New bootstrap kits built for NetBSD/powerpc, NetBSD/earmv7hf,
   and NetBSD/sparc64 version 1.31.1.
 * gcc-wrap script amended to also drop -Wl,--enable-new-dtags
   (so it could be used outside pkgsrc)
 * Worked around use of AtomicU64 in release build tool (ugly band-aid patch).
   Some platforms lack support for that type and associated operations.

Upstream changes:
 - [Fix Rust failing to build on `powerpc-unknown-netbsd`][56562]
 - [Fix broken go-to-definition in RLS][rls/1171]
 - [Fix infinite loop on hover in RLS][rls/1170]

[56562]: rust-lang/rust#56562
[rls/1171]: rust-lang/rls#1171
[rls/1170]: rust-lang/rls#1170
  • Loading branch information
he32 committed Dec 21, 2018
1 parent 45e8f6c commit e5ae97a
Show file tree
Hide file tree
Showing 6 changed files with 144 additions and 75 deletions.
82 changes: 43 additions & 39 deletions lang/rust/Makefile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# $NetBSD: Makefile,v 1.69 2018/12/15 12:41:43 jperkin Exp $
# $NetBSD: Makefile,v 1.70 2018/12/21 23:12:34 he Exp $

DISTNAME= rustc-1.31.0-src
DISTNAME= rustc-1.31.1-src
PKGNAME= ${DISTNAME:S/rustc/rust/:S/-src//}
CATEGORIES= lang
MASTER_SITES= http://static.rust-lang.org/dist/
Expand Down Expand Up @@ -39,6 +39,10 @@ CONFIGURE_ARGS+= --disable-ninja
#CONFIGURE_ARGS+= --llvm-root=${BUILDLINK_PREFIX.llvm}
CONFIGURE_ARGS.SunOS+= --disable-jemalloc

# Use "dist" build target for cross compile of bootstrap
#BUILD_TARGET= dist
BUILD_TARGET= build

# The gcc-wrap / c++-wrap script takes CROSS_ROOT environment variable
# to do a cross-build. The wrapper script assumes dest/ and tools/
# as a result of a cross-build as subdirectories of this root
Expand All @@ -51,15 +55,15 @@ CONFIGURE_ARGS.SunOS+= --disable-jemalloc
#GNU_CROSS_TARGET= armv7--netbsdelf-eabihf
#GNU_CROSS_TARGET= sparc64--netbsd
#GNU_CROSS_TARGET= powerpc--netbsd
MAKE_ENV+= GNU_CROSS_TARGET=${GNU_CROSS_TARGET}
#MAKE_ENV+= GNU_CROSS_TARGET=${GNU_CROSS_TARGET}

# To cross-build rust, you need to specify
# the ultimate target to built for, as well as the
# host the compiler is supposed to run on.
# Rust's target designation
#TARGET= armv7-unknown-netbsd-eabihf
#TARGET= sparc64-unknown-netbsd
#TARGET= powerpc-unknown-netbsd
#TARGET= armv7-unknown-netbsd-eabihf
#TARGET= sparc64-unknown-netbsd
#TARGET= powerpc-unknown-netbsd
#SCRIPTS= ${WRKDIR}/scripts
#CONFIGURE_ARGS+= --host=${TARGET}
#CONFIGURE_ARGS+= --target=${TARGET}
Expand Down Expand Up @@ -211,39 +215,39 @@ RUST_STD_STAGE0:= rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
DISTFILES:= ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
pre-build-fix:
.endif
#.if !empty(MACHINE_PLATFORM:MNetBSD-*-powerpc) || make(distinfo) || make (makesum) || make(mdi)
#RUST_STAGE0_VER= 1.30.1
#RUST_ARCH= powerpc-unknown-netbsd
#RUST_STAGE0:= rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
#RUST_STD_STAGE0:= rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
#DISTFILES:= ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
## Do not trust he@.
#SITES.${RUST_STAGE0}= ftp://golden-delicious.urc.uninett.no/pub/rust/
#SITES.${RUST_STD_STAGE0}= ftp://golden-delicious.urc.uninett.no/pub/rust/
#pre-build-fix:
#.endif
#.if !empty(MACHINE_PLATFORM:MNetBSD-*-sparc64) || make(distinfo) || make (makesum) || make(mdi)
#RUST_STAGE0_VER= 1.30.1
#RUST_ARCH= sparc64-unknown-netbsd
#RUST_STAGE0:= rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
#RUST_STD_STAGE0:= rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
#DISTFILES:= ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
## Do not trust he@.
#SITES.${RUST_STAGE0}= ftp://golden-delicious.urc.uninett.no/pub/rust/
#SITES.${RUST_STD_STAGE0}= ftp://golden-delicious.urc.uninett.no/pub/rust/
#pre-build-fix:
#.endif
#.if !empty(MACHINE_PLATFORM:MNetBSD-*-earmv7hf) || make(distinfo) || make (makesum) || make(mdi)
#RUST_ARCH= armv7-unknown-netbsd-eabihf
#RUST_STAGE0_VER= 1.30.1
#RUST_STAGE0:= rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
#RUST_STD_STAGE0:= rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
#DISTFILES:= ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
.if !empty(MACHINE_PLATFORM:MNetBSD-*-powerpc) || make(distinfo) || make (makesum) || make(mdi)
RUST_STAGE0_VER= 1.31.1
RUST_ARCH= powerpc-unknown-netbsd
RUST_STAGE0:= rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
RUST_STD_STAGE0:= rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
DISTFILES:= ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
# Do not trust he@.
SITES.${RUST_STAGE0}= ftp://golden-delicious.urc.uninett.no/pub/rust/
SITES.${RUST_STD_STAGE0}= ftp://golden-delicious.urc.uninett.no/pub/rust/
pre-build-fix:
.endif
.if !empty(MACHINE_PLATFORM:MNetBSD-*-sparc64) || make(distinfo) || make (makesum) || make(mdi)
RUST_STAGE0_VER= 1.31.1
RUST_ARCH= sparc64-unknown-netbsd
RUST_STAGE0:= rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
RUST_STD_STAGE0:= rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
DISTFILES:= ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
## Do not trust he@.
#SITES.${RUST_STAGE0}= ftp://golden-delicious.urc.uninett.no/pub/rust/
#SITES.${RUST_STD_STAGE0}= ftp://golden-delicious.urc.uninett.no/pub/rust/
#pre-build-fix:
#.endif
SITES.${RUST_STAGE0}= ftp://golden-delicious.urc.uninett.no/pub/rust/
SITES.${RUST_STD_STAGE0}= ftp://golden-delicious.urc.uninett.no/pub/rust/
pre-build-fix:
.endif
.if !empty(MACHINE_PLATFORM:MNetBSD-*-earmv7hf) || make(distinfo) || make (makesum) || make(mdi)
RUST_ARCH= armv7-unknown-netbsd-eabihf
RUST_STAGE0_VER= 1.31.1
RUST_STAGE0:= rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
RUST_STD_STAGE0:= rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
DISTFILES:= ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
# Do not trust he@.
SITES.${RUST_STAGE0}= ftp://golden-delicious.urc.uninett.no/pub/rust/
SITES.${RUST_STD_STAGE0}= ftp://golden-delicious.urc.uninett.no/pub/rust/
pre-build-fix:
.endif

# You may override RUST_BOOTSTRAP_PATH and RUST_ARCH in mk.conf if you have a local bootstrap compiler.
.if !defined(RUST_ARCH) && !defined(RUST_BOOTSTRAP_PATH)
Expand Down Expand Up @@ -312,7 +316,7 @@ pre-build: pre-build-fix
do-build:
cd ${WRKSRC} \
&& ${SETENV} ${MAKE_ENV} \
${PYTHONBIN} ./x.py -v build -j ${MAKE_JOBS:U1}
${PYTHONBIN} ./x.py -v ${BUILD_TARGET} -j ${MAKE_JOBS:U1}

do-install:
cd ${WRKSRC} \
Expand Down
45 changes: 35 additions & 10 deletions lang/rust/distinfo
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
$NetBSD: distinfo,v 1.49 2018/12/15 12:41:43 jperkin Exp $
$NetBSD: distinfo,v 1.50 2018/12/21 23:12:34 he Exp $

SHA1 (rust-1.30.0-x86_64-sun-solaris.tar.gz) = d1da4a02bdbb9a46587bc64d4b7987bb3f1aaeab
RMD160 (rust-1.30.0-x86_64-sun-solaris.tar.gz) = 0670575ad4eb63f86d34299104f451463e5fc070
Expand All @@ -20,10 +20,10 @@ SHA1 (rust-1.30.1-i686-unknown-netbsd.tar.gz) = b69dc0668f2cccb142de6e2f9677fca4
RMD160 (rust-1.30.1-i686-unknown-netbsd.tar.gz) = 8ea9ccbbdc4952d4cb8acd3ca6baf0b75c2bba96
SHA512 (rust-1.30.1-i686-unknown-netbsd.tar.gz) = 71f7a0090bda6b4e59c83e6a03373b535f49fa3ef84ed5ffee07dc6efcb73a923067948cd5e6e30920cba09c62493c368266a5a81dad6b08a78f7f960720b9a2
Size (rust-1.30.1-i686-unknown-netbsd.tar.gz) = 178607401 bytes
SHA1 (rust-1.30.1-x86_64-apple-darwin.tar.gz) = 473a4a5dcd78ddeb7c404cce16801e6c26659f9f
RMD160 (rust-1.30.1-x86_64-apple-darwin.tar.gz) = f95902212ddfefb5b16f2d9e0bd2f92c7c4cf692
SHA512 (rust-1.30.1-x86_64-apple-darwin.tar.gz) = 1af9a47338c3c3751ebe0d107caa7d9c30f9d505a1bee0ccaf82756fba236b2ab0008f843c333e700078c87ee29ababb5e61b591e93b98816b448e3d968683a4
Size (rust-1.30.1-x86_64-apple-darwin.tar.gz) = 211354077 bytes
SHA1 (rust-1.30.1-x86_64-apple-darwin.tar.gz) = a5f12d93b7a09f1c2bef77e7bc93439f8d244acc
RMD160 (rust-1.30.1-x86_64-apple-darwin.tar.gz) = e64b687e5906ad5ab91df17ded7141c84fd8633b
SHA512 (rust-1.30.1-x86_64-apple-darwin.tar.gz) = b1cd6ff29d1b70e579ff5c4b67bd837972b305588987197dc9fc61b4a4dfc161af4e4c2b005e99dff58e3159e3a61361e8f62e909532c6984f4301c8e9f8f543
Size (rust-1.30.1-x86_64-apple-darwin.tar.gz) = 87933392 bytes
SHA1 (rust-1.30.1-x86_64-unknown-freebsd.tar.gz) = bf54b05ef89db6bd730478141cbfe0381d88f30a
RMD160 (rust-1.30.1-x86_64-unknown-freebsd.tar.gz) = 1917b2b3ceb8e4e918a2a56d9da95cb679ea94f4
SHA512 (rust-1.30.1-x86_64-unknown-freebsd.tar.gz) = c5d651a93b210565fb460684bc570c57d5d381b4cefebff7bab913c3c3ae1cd58971b322a4c40ecedc3ece101357734043686c6ec6030fb3949784073e0ee145
Expand All @@ -36,6 +36,18 @@ SHA1 (rust-1.30.1-x86_64-unknown-netbsd.tar.gz) = 36f5db64fff80de6215a2b7299aa50
RMD160 (rust-1.30.1-x86_64-unknown-netbsd.tar.gz) = d99feb41309fd644c05ea4bbf3649f2d4e0d2e99
SHA512 (rust-1.30.1-x86_64-unknown-netbsd.tar.gz) = cf4fdc7b5ed2851a514d9c1bf6ff789c7a307be2da49e86ac9b126794ca037ae587fb40fe8d080393d1fa4c0ace6144dbb2070c19e8b4b4eaa32fd814abdb167
Size (rust-1.30.1-x86_64-unknown-netbsd.tar.gz) = 173425702 bytes
SHA1 (rust-1.31.1-armv7-unknown-netbsd-eabihf.tar.gz) = a3f4425d3a4fa2b0521cd87b293192dc87baeb22
RMD160 (rust-1.31.1-armv7-unknown-netbsd-eabihf.tar.gz) = 5eeb1a7eacf4880958068df1d694d2519807464b
SHA512 (rust-1.31.1-armv7-unknown-netbsd-eabihf.tar.gz) = 2293f48474201590925c67d8bdb1bbdee4bf18377ac0dc2a9f7c137fb1a5a59626ae3ca68628875c88e4eee8d6e5d82d920830efde780e31c0d26a164c6f7040
Size (rust-1.31.1-armv7-unknown-netbsd-eabihf.tar.gz) = 214284901 bytes
SHA1 (rust-1.31.1-powerpc-unknown-netbsd.tar.gz) = 18673f5548eb8e4aee25a458a83f8cbb6b2acde9
RMD160 (rust-1.31.1-powerpc-unknown-netbsd.tar.gz) = bc39a1b0994e551e439ca019eb04049948d4bec9
SHA512 (rust-1.31.1-powerpc-unknown-netbsd.tar.gz) = 7c24f61c4f6ef9794c03bb079dc8a91a0d5f36d139864ca938edc7b4d8efe31bb73ba8b412ec3d322bae830fb0a079d4ad10673926806a58dab1dcce1a5ae823
Size (rust-1.31.1-powerpc-unknown-netbsd.tar.gz) = 220507711 bytes
SHA1 (rust-1.31.1-sparc64-unknown-netbsd.tar.gz) = 1930e26264d000538aeb65f478e986ce840a3519
RMD160 (rust-1.31.1-sparc64-unknown-netbsd.tar.gz) = 51c94ee6daee468dae1fa130c45c1a604234222e
SHA512 (rust-1.31.1-sparc64-unknown-netbsd.tar.gz) = ec7df6e0e5069c6d5f5e5545c7ebca16430826c9eacc4e23d3b0036de37860d32f970fdfcd4a46d81ccef5d06ee8f8e3ae2e328c2b1c4e81a6bcfb8c7e9cf04d
Size (rust-1.31.1-sparc64-unknown-netbsd.tar.gz) = 215736328 bytes
SHA1 (rust-std-1.30.1-i686-apple-darwin.tar.gz) = 6fccebb77050ab0cbc1712f6c405db1b36f5aafd
RMD160 (rust-std-1.30.1-i686-apple-darwin.tar.gz) = ccf93779c04465097067f512ec9ba38c2a6ce02a
SHA512 (rust-std-1.30.1-i686-apple-darwin.tar.gz) = bcd4919e2c19839ef8b53fce7cabf800f09fed11a118649b8e6bdb74f974a1f7f9ac69d8eb2e1dc24ab74dd668aebafc2487936e596447768d474a194b527751
Expand Down Expand Up @@ -68,10 +80,22 @@ SHA1 (rust-std-1.30.1-x86_64-unknown-netbsd.tar.gz) = 881829aa871752c5d10fd294ba
RMD160 (rust-std-1.30.1-x86_64-unknown-netbsd.tar.gz) = d3688a289d86139acaba9b0150fa5af5c755fc7b
SHA512 (rust-std-1.30.1-x86_64-unknown-netbsd.tar.gz) = c83237c8c2e1aebb38f64aad14d48dbbda908e0727b49f56251b5d951faae84dc82a77612062e31f91979b84cb9564b645efc0c0e0c04f6774b4907453fd1096
Size (rust-std-1.30.1-x86_64-unknown-netbsd.tar.gz) = 69397670 bytes
SHA1 (rustc-1.31.0-src.tar.gz) = 699c7a4af09173e74f90b31eaed468184018037e
RMD160 (rustc-1.31.0-src.tar.gz) = 7b4503940379ab5f7ac5e7cd950db98adfa752c1
SHA512 (rustc-1.31.0-src.tar.gz) = 1fa85b6301079ecc38fde08260af6d2122d3516ae006bf55de3b276774f6ecb53376f5449e5a86fb046dfb2feb7735d46e126dc783c7c1aacd276d013b02249f
Size (rustc-1.31.0-src.tar.gz) = 151145680 bytes
SHA1 (rust-std-1.31.1-armv7-unknown-netbsd-eabihf.tar.gz) = be493285977fdc40c45bf495a223fdd247056ecb
RMD160 (rust-std-1.31.1-armv7-unknown-netbsd-eabihf.tar.gz) = 628a7b669a2578db6b7a4ab02b9c8845698d1500
SHA512 (rust-std-1.31.1-armv7-unknown-netbsd-eabihf.tar.gz) = 26a5ad3b3285bd4d3b2c778568ca8a8c66e60c86f10e61d9e04d60103dbca28839f79cfd7835472a65a3fa731ba127ea1bd7a45d41b642a390f31171aea75ed4
Size (rust-std-1.31.1-armv7-unknown-netbsd-eabihf.tar.gz) = 71603203 bytes
SHA1 (rust-std-1.31.1-powerpc-unknown-netbsd.tar.gz) = 98fc92ba3cf21147e4f27babe438e786194cba98
RMD160 (rust-std-1.31.1-powerpc-unknown-netbsd.tar.gz) = 7053db7cbf8dfd3188c7685f0aa6052801c3d16c
SHA512 (rust-std-1.31.1-powerpc-unknown-netbsd.tar.gz) = a95c793c95e765a75e377e73e555387ed9cd71dac2c227747269b476eb9ad25b2f6bc12db46b283f1a6722a1f531c550dd8a9e6f8fd81ec4013042485d3e17a3
Size (rust-std-1.31.1-powerpc-unknown-netbsd.tar.gz) = 70015527 bytes
SHA1 (rust-std-1.31.1-sparc64-unknown-netbsd.tar.gz) = d20f6df638543f59771a7cd825c5945cbab20c4f
RMD160 (rust-std-1.31.1-sparc64-unknown-netbsd.tar.gz) = 85f1b171abc07d624b44ae2ba6b6b3e4fe1cf27b
SHA512 (rust-std-1.31.1-sparc64-unknown-netbsd.tar.gz) = 06083d8a0cb7bbde28362edd7b47f6b3253529733bd03ca45b5f4e9856a8850a7fe890db42d7c2898512c2466abc53c7b8ca48b84327a8e24604717179eefaa9
Size (rust-std-1.31.1-sparc64-unknown-netbsd.tar.gz) = 71836855 bytes
SHA1 (rustc-1.31.1-src.tar.gz) = b4276b400bade8e3fc13aed023c5356ec28bdc80
RMD160 (rustc-1.31.1-src.tar.gz) = 5c3ffa2ab47b20755e6acd5d98fbd692627b2158
SHA512 (rustc-1.31.1-src.tar.gz) = 76ca238c40694abab4982f4b788a0da34bbb3d8a6e4adb50b0b9138876407ac2cb4fc39cde057b8fa32729c543c5977d392167e96b82f76a01af31eaafe463cf
Size (rustc-1.31.1-src.tar.gz) = 151163848 bytes
SHA1 (patch-src_bootstrap_bin_rustc.rs) = 0abf893090a6053e01fd658096d9a2b5b8c144da
SHA1 (patch-src_bootstrap_bootstrap.py) = 5b886b95857bf019c2e37cb380e6905cb444b756
SHA1 (patch-src_bootstrap_builder.rs) = e02356401417f8e8296a5fe27c68072f698f0190
Expand All @@ -88,6 +112,7 @@ SHA1 (patch-src_llvm_include_llvm-c_DataTypes.h) = 432693204912e79059ee31e815ad1
SHA1 (patch-src_llvm_include_llvm_Analysis_ConstantFolding.h) = 861089ea7ec8985b9b9fce53ffadfa3e9eed4a72
SHA1 (patch-src_tools_cargo_src_cargo_core_profiles.rs) = 379f60b809d5af3569541828c7e485da805ad9cc
SHA1 (patch-src_tools_cargo_tests_testsuite_build.rs) = 76e77c2c49baf8c951ed8d2293e98e3ede0f8538
SHA1 (patch-src_tools_rls_src_cmd.rs) = 754bfb8806e209cb0ef01690b48bf4b145017ab9
SHA1 (patch-src_tools_rls_src_server_io.rs) = 74b90c1aeb70b0c3a20709145d6568ddf4647877
SHA1 (patch-src_tools_rust-installer_install-template.sh) = f2ec6dced2be1fa23773d5827503ad07d0913dc2
SHA1 (patch-src_tools_rust-installer_src_generator.rs) = 45fb4762ef7ddaa7b7071897921d26522277cfc1
SHA1 (patch-src_vendor_rand_src_rngs_os.rs) = 318c9e0ed77f83bb34f5512638545ff16844e8fd
3 changes: 3 additions & 0 deletions lang/rust/files/gcc-wrap
Original file line number Diff line number Diff line change
Expand Up @@ -136,6 +136,9 @@ while [ $# -gt 0 ]; do
fi
args="$args -L=/usr/pkg/lib"
;;
-Wl,--enable-new-dtags)
# ignore
;;
*)
args="$args $1"
;;
Expand Down
24 changes: 24 additions & 0 deletions lang/rust/patches/patch-src_tools_rls_src_cmd.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
$NetBSD: patch-src_tools_rls_src_cmd.rs,v 1.1 2018/12/21 23:12:34 he Exp $

--- src/tools/rls/src/cmd.rs.orig 2018-12-18 23:12:41.000000000 +0000
+++ src/tools/rls/src/cmd.rs
@@ -17,7 +17,7 @@ use crate::config::Config;
use crate::server::{self, LsService, Notification, Request, RequestId};
use rls_analysis::{AnalysisHost, Target};
use rls_vfs::Vfs;
-use std::sync::atomic::{AtomicU64, Ordering};
+use std::sync::atomic::{AtomicU32, Ordering};

use languageserver_types::{
ClientCapabilities, CodeActionContext, CodeActionParams, CompletionItem,
@@ -424,8 +424,8 @@ fn url(file_name: &str) -> Url {
}

fn next_id() -> RequestId {
- static ID: AtomicU64 = AtomicU64::new(1);
- RequestId::Num(ID.fetch_add(1, Ordering::SeqCst))
+ static ID: AtomicU32 = AtomicU32::new(1);
+ RequestId::Num(ID.fetch_add(1, Ordering::SeqCst) as u64)
}

// Custom reader and output for the RLS server.
39 changes: 39 additions & 0 deletions lang/rust/patches/patch-src_tools_rls_src_server_io.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
$NetBSD: patch-src_tools_rls_src_server_io.rs,v 1.1 2018/12/21 23:12:34 he Exp $

--- src/tools/rls/src/server/io.rs.orig 2018-12-18 23:12:41.000000000 +0000
+++ src/tools/rls/src/server/io.rs
@@ -17,7 +17,7 @@ use crate::lsp_data::{LSPNotification, L

use std::fmt;
use std::io::{self, BufRead, Write};
-use std::sync::atomic::{AtomicU64, Ordering};
+use std::sync::atomic::{AtomicU32, Ordering};
use std::sync::Arc;

use jsonrpc_core::{self as jsonrpc, response, version, Id};
@@ -190,14 +190,14 @@ pub trait Output: Sync + Send + Clone +
/// An output that sends notifications and responses on `stdout`.
#[derive(Clone)]
pub(super) struct StdioOutput {
- next_id: Arc<AtomicU64>,
+ next_id: Arc<AtomicU32>,
}

impl StdioOutput {
/// Construct a new `stdout` output.
crate fn new() -> StdioOutput {
StdioOutput {
- next_id: Arc::new(AtomicU64::new(1)),
+ next_id: Arc::new(AtomicU32::new(1)),
}
}
}
@@ -215,7 +215,7 @@ impl Output for StdioOutput {
}

fn provide_id(&self) -> RequestId {
- RequestId::Num(self.next_id.fetch_add(1, Ordering::SeqCst))
+ RequestId::Num(self.next_id.fetch_add(1, Ordering::SeqCst) as u64)
}
}

26 changes: 0 additions & 26 deletions lang/rust/patches/patch-src_tools_rust-installer_src_generator.rs

This file was deleted.

0 comments on commit e5ae97a

Please sign in to comment.