Skip to content

Commit 9dc09e7

Browse files
authored
Update toolchain to 2024-09-23 (#3544)
Changes required due to: - rust-lang/rust#130593 Sync from rustfmt - rust-lang/rust#124895 Disallow hidden references to mutable static With the exception of changes to `rust-toolchain.toml`, `rustfmt.toml`, and `library/kani/src/futures.rs` all changes were automatically created by running `scripts/kani-fmt.sh`. By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 and MIT licenses.
1 parent 2755592 commit 9dc09e7

File tree

131 files changed

+503
-546
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

131 files changed

+503
-546
lines changed

cprover_bindings/src/cbmc_string.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33

44
use lazy_static::lazy_static;
55
use std::sync::Mutex;
6+
use string_interner::StringInterner;
67
use string_interner::backend::StringBackend;
78
use string_interner::symbol::SymbolU32;
8-
use string_interner::StringInterner;
99

1010
/// This class implements an interner for Strings.
1111
/// CBMC objects to have a large number of strings which refer to names: symbols, files, etc.

cprover_bindings/src/env.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@
88
//! c.f. CBMC code [src/ansi-c/ansi_c_internal_additions.cpp].
99
//! One possible invocation of this insertion in CBMC can be found in \[ansi_c_languaget::parse\].
1010
11-
use super::goto_program::{Expr, Location, Symbol, SymbolTable, Type};
1211
use super::MachineModel;
12+
use super::goto_program::{Expr, Location, Symbol, SymbolTable, Type};
1313
use num::bigint::BigInt;
1414
fn int_constant<T>(name: &str, value: T) -> Symbol
1515
where

cprover_bindings/src/goto_program/expr.rs

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -285,13 +285,10 @@ pub fn arithmetic_overflow_result_type(operand_type: Type) -> Type {
285285
// give the struct the name "overflow_result_<type>", e.g.
286286
// "overflow_result_Unsignedbv"
287287
let name: InternedString = format!("overflow_result_{operand_type:?}").into();
288-
Type::struct_type(
289-
name,
290-
vec![
291-
DatatypeComponent::field(ARITH_OVERFLOW_RESULT_FIELD, operand_type),
292-
DatatypeComponent::field(ARITH_OVERFLOW_OVERFLOWED_FIELD, Type::bool()),
293-
],
294-
)
288+
Type::struct_type(name, vec![
289+
DatatypeComponent::field(ARITH_OVERFLOW_RESULT_FIELD, operand_type),
290+
DatatypeComponent::field(ARITH_OVERFLOW_OVERFLOWED_FIELD, Type::bool()),
291+
])
295292
}
296293

297294
///////////////////////////////////////////////////////////////////////////////////////////////

cprover_bindings/src/goto_program/mod.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ mod typ;
1717

1818
pub use builtin::BuiltinFn;
1919
pub use expr::{
20-
arithmetic_overflow_result_type, ArithmeticOverflowResult, BinaryOperator, Expr, ExprValue,
21-
SelfOperator, UnaryOperator, ARITH_OVERFLOW_OVERFLOWED_FIELD, ARITH_OVERFLOW_RESULT_FIELD,
20+
ARITH_OVERFLOW_OVERFLOWED_FIELD, ARITH_OVERFLOW_RESULT_FIELD, ArithmeticOverflowResult,
21+
BinaryOperator, Expr, ExprValue, SelfOperator, UnaryOperator, arithmetic_overflow_result_type,
2222
};
2323
pub use location::Location;
2424
pub use stmt::{Stmt, StmtBody, SwitchCase};

cprover_bindings/src/goto_program/symbol_table.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// Copyright Kani Contributors
22
// SPDX-License-Identifier: Apache-2.0 OR MIT
3-
use super::super::{env, MachineModel};
3+
use super::super::{MachineModel, env};
44
use super::{BuiltinFn, FunctionContract, Stmt, Symbol};
55
use crate::InternedString;
66
use std::collections::BTreeMap;

cprover_bindings/src/goto_program/typ.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22
// SPDX-License-Identifier: Apache-2.0 OR MIT
33
use self::DatatypeComponent::*;
44
use self::Type::*;
5-
use super::super::utils::{aggr_tag, max_int, min_int};
65
use super::super::MachineModel;
6+
use super::super::utils::{aggr_tag, max_int, min_int};
77
use super::{Expr, SymbolTable};
88
use crate::cbmc_string::InternedString;
99
use std::collections::BTreeMap;
@@ -1598,10 +1598,10 @@ mod type_tests {
15981598
fn check_typedef_struct_properties() {
15991599
// Create a struct with a random field.
16001600
let struct_name: InternedString = "MyStruct".into();
1601-
let struct_type = Type::struct_type(
1602-
struct_name,
1603-
vec![DatatypeComponent::Field { name: "field".into(), typ: Double }],
1604-
);
1601+
let struct_type = Type::struct_type(struct_name, vec![DatatypeComponent::Field {
1602+
name: "field".into(),
1603+
typ: Double,
1604+
}]);
16051605
// Insert a field to the sym table to represent the struct field.
16061606
let mut sym_table = SymbolTable::new(machine_model_test_stub());
16071607
sym_table.ensure(struct_type.type_name().unwrap(), |_, name| {

cprover_bindings/src/irep/goto_binary_serde.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1205,12 +1205,12 @@ mod sharing_stats {
12051205
mod tests {
12061206
use super::GotoBinarySerializer;
12071207
use super::IrepNumbering;
1208+
use crate::InternedString;
12081209
use crate::cbmc_string::InternString;
1209-
use crate::irep::goto_binary_serde::GotoBinaryDeserializer;
12101210
use crate::irep::Irep;
12111211
use crate::irep::IrepId;
1212+
use crate::irep::goto_binary_serde::GotoBinaryDeserializer;
12121213
use crate::linear_map;
1213-
use crate::InternedString;
12141214
use linear_map::LinearMap;
12151215
use std::io::BufWriter;
12161216
/// Utility function : creates a Irep representing a single symbol.

cprover_bindings/src/irep/irep.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22
// SPDX-License-Identifier: Apache-2.0 OR MIT
33
//! The actual `Irep` structure, and associated constructors, getters, and setters.
44
5-
use super::super::goto_program::{Location, Type};
65
use super::super::MachineModel;
6+
use super::super::goto_program::{Location, Type};
77
use super::{IrepId, ToIrep};
88
use crate::cbmc_string::InternedString;
99
use crate::linear_map;

cprover_bindings/src/irep/serialize.rs

Lines changed: 113 additions & 117 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
// Copyright Kani Contributors
22
// SPDX-License-Identifier: Apache-2.0 OR MIT
33
//! This crate implements irep serialization using serde Serializer.
4-
use crate::irep::{Irep, IrepId, Symbol, SymbolTable};
54
use crate::InternedString;
6-
use serde::ser::{SerializeMap, Serializer};
5+
use crate::irep::{Irep, IrepId, Symbol, SymbolTable};
76
use serde::Serialize;
7+
use serde::ser::{SerializeMap, Serializer};
88

99
impl Serialize for Irep {
1010
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
@@ -145,14 +145,16 @@ impl Serialize for Symbol {
145145
#[cfg(test)]
146146
mod test {
147147
use super::*;
148-
use serde_test::{assert_ser_tokens, Token};
148+
use serde_test::{Token, assert_ser_tokens};
149149
#[test]
150150
fn serialize_irep() {
151151
let irep = Irep::empty();
152-
assert_ser_tokens(
153-
&irep,
154-
&[Token::Map { len: None }, Token::String("id"), Token::String("empty"), Token::MapEnd],
155-
);
152+
assert_ser_tokens(&irep, &[
153+
Token::Map { len: None },
154+
Token::String("id"),
155+
Token::String("empty"),
156+
Token::MapEnd,
157+
]);
156158
}
157159

158160
#[test]
@@ -187,80 +189,77 @@ mod test {
187189
is_weak: false,
188190
};
189191
sym_table.insert(symbol);
190-
assert_ser_tokens(
191-
&sym_table,
192-
&[
193-
Token::Map { len: None },
194-
Token::String("symbolTable"),
195-
Token::Map { len: Some(1) },
196-
Token::String("my_name"),
197-
// symbol start
198-
Token::Map { len: None },
199-
// type irep
200-
Token::String("type"),
201-
Token::Map { len: None },
202-
Token::String("id"),
203-
Token::String("empty"),
204-
Token::MapEnd,
205-
// value irep
206-
Token::String("value"),
207-
Token::Map { len: None },
208-
Token::String("id"),
209-
Token::String("empty"),
210-
Token::MapEnd,
211-
// value locaton
212-
Token::String("location"),
213-
Token::Map { len: None },
214-
Token::String("id"),
215-
Token::String("empty"),
216-
Token::MapEnd,
217-
Token::String("name"),
218-
Token::String("my_name"),
219-
Token::String("module"),
220-
Token::String(""),
221-
Token::String("baseName"),
222-
Token::String(""),
223-
Token::String("prettyName"),
224-
Token::String(""),
225-
Token::String("mode"),
226-
Token::String(""),
227-
Token::String("isType"),
228-
Token::Bool(false),
229-
Token::String("isMacro"),
230-
Token::Bool(false),
231-
Token::String("isExported"),
232-
Token::Bool(false),
233-
Token::String("isInput"),
234-
Token::Bool(false),
235-
Token::String("isOutput"),
236-
Token::Bool(false),
237-
Token::String("isStateVar"),
238-
Token::Bool(false),
239-
Token::String("isProperty"),
240-
Token::Bool(false),
241-
Token::String("isStaticLifetime"),
242-
Token::Bool(false),
243-
Token::String("isThreadLocal"),
244-
Token::Bool(false),
245-
Token::String("isLvalue"),
246-
Token::Bool(false),
247-
Token::String("isFileLocal"),
248-
Token::Bool(false),
249-
Token::String("isExtern"),
250-
Token::Bool(false),
251-
Token::String("isVolatile"),
252-
Token::Bool(false),
253-
Token::String("isParameter"),
254-
Token::Bool(false),
255-
Token::String("isAuxiliary"),
256-
Token::Bool(false),
257-
Token::String("isWeak"),
258-
Token::Bool(false),
259-
Token::MapEnd,
260-
Token::MapEnd,
261-
Token::MapEnd,
262-
],
263-
);
192+
assert_ser_tokens(&sym_table, &[
193+
Token::Map { len: None },
194+
Token::String("symbolTable"),
195+
Token::Map { len: Some(1) },
196+
Token::String("my_name"),
197+
// symbol start
198+
Token::Map { len: None },
199+
// type irep
200+
Token::String("type"),
201+
Token::Map { len: None },
202+
Token::String("id"),
203+
Token::String("empty"),
204+
Token::MapEnd,
205+
// value irep
206+
Token::String("value"),
207+
Token::Map { len: None },
208+
Token::String("id"),
209+
Token::String("empty"),
210+
Token::MapEnd,
211+
// value locaton
212+
Token::String("location"),
213+
Token::Map { len: None },
214+
Token::String("id"),
215+
Token::String("empty"),
216+
Token::MapEnd,
217+
Token::String("name"),
218+
Token::String("my_name"),
219+
Token::String("module"),
220+
Token::String(""),
221+
Token::String("baseName"),
222+
Token::String(""),
223+
Token::String("prettyName"),
224+
Token::String(""),
225+
Token::String("mode"),
226+
Token::String(""),
227+
Token::String("isType"),
228+
Token::Bool(false),
229+
Token::String("isMacro"),
230+
Token::Bool(false),
231+
Token::String("isExported"),
232+
Token::Bool(false),
233+
Token::String("isInput"),
234+
Token::Bool(false),
235+
Token::String("isOutput"),
236+
Token::Bool(false),
237+
Token::String("isStateVar"),
238+
Token::Bool(false),
239+
Token::String("isProperty"),
240+
Token::Bool(false),
241+
Token::String("isStaticLifetime"),
242+
Token::Bool(false),
243+
Token::String("isThreadLocal"),
244+
Token::Bool(false),
245+
Token::String("isLvalue"),
246+
Token::Bool(false),
247+
Token::String("isFileLocal"),
248+
Token::Bool(false),
249+
Token::String("isExtern"),
250+
Token::Bool(false),
251+
Token::String("isVolatile"),
252+
Token::Bool(false),
253+
Token::String("isParameter"),
254+
Token::Bool(false),
255+
Token::String("isAuxiliary"),
256+
Token::Bool(false),
257+
Token::String("isWeak"),
258+
Token::Bool(false),
259+
Token::MapEnd,
260+
Token::MapEnd,
261+
Token::MapEnd,
262+
]);
264263
}
265264

266265
#[test]
@@ -269,41 +268,38 @@ mod test {
269268
let one_irep = Irep::one();
270269
let sub_irep = Irep::just_sub(vec![empty_irep.clone(), one_irep]);
271270
let top_irep = Irep::just_sub(vec![sub_irep, empty_irep]);
272-
assert_ser_tokens(
273-
&top_irep,
274-
&[
275-
// top_irep
276-
Token::Map { len: None },
277-
Token::String("id"),
278-
Token::String(""),
279-
Token::String("sub"),
280-
Token::Seq { len: Some(2) },
281-
// sub_irep
282-
Token::Map { len: None },
283-
Token::String("id"),
284-
Token::String(""),
285-
Token::String("sub"),
286-
Token::Seq { len: Some(2) },
287-
// empty_irep
288-
Token::Map { len: None },
289-
Token::String("id"),
290-
Token::String("empty"),
291-
Token::MapEnd,
292-
// one_irep
293-
Token::Map { len: None },
294-
Token::String("id"),
295-
Token::String("1"),
296-
Token::MapEnd,
297-
Token::SeqEnd,
298-
Token::MapEnd,
299-
// empty_irep
300-
Token::Map { len: None },
301-
Token::String("id"),
302-
Token::String("empty"),
303-
Token::MapEnd,
304-
Token::SeqEnd,
305-
Token::MapEnd,
306-
],
307-
);
271+
assert_ser_tokens(&top_irep, &[
272+
// top_irep
273+
Token::Map { len: None },
274+
Token::String("id"),
275+
Token::String(""),
276+
Token::String("sub"),
277+
Token::Seq { len: Some(2) },
278+
// sub_irep
279+
Token::Map { len: None },
280+
Token::String("id"),
281+
Token::String(""),
282+
Token::String("sub"),
283+
Token::Seq { len: Some(2) },
284+
// empty_irep
285+
Token::Map { len: None },
286+
Token::String("id"),
287+
Token::String("empty"),
288+
Token::MapEnd,
289+
// one_irep
290+
Token::Map { len: None },
291+
Token::String("id"),
292+
Token::String("1"),
293+
Token::MapEnd,
294+
Token::SeqEnd,
295+
Token::MapEnd,
296+
// empty_irep
297+
Token::Map { len: None },
298+
Token::String("id"),
299+
Token::String("empty"),
300+
Token::MapEnd,
301+
Token::SeqEnd,
302+
Token::MapEnd,
303+
]);
308304
}
309305
}

0 commit comments

Comments
 (0)