diff options
author | Henri Chataing <henrichataing@google.com> | 2023-07-27 10:59:54 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2023-07-27 10:59:54 +0000 |
commit | b53cad45aa6afb6a2f93bbf5a030002c20dca71f (patch) | |
tree | 4f8100c2b466e8c2224dd1df8cfe19881eb9c970 | |
parent | 3615d4527bf64ace824a09c9dd79081e30ee78ee (diff) | |
parent | c5e6c3e733cf9d8e6757c7c703de2be975b96337 (diff) | |
download | pdl-compiler-b53cad45aa6afb6a2f93bbf5a030002c20dca71f.tar.gz |
Upgrade pdl-compiler to 0.1.5 am: 3f09ffba33 am: c5e6c3e733
Original change: https://android-review.googlesource.com/c/platform/external/rust/crates/pdl-compiler/+/2676041
Change-Id: I77e18974b06b9b3d0154a32ef00d930be1c37504
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r-- | .cargo_vcs_info.json | 2 | ||||
-rw-r--r-- | Android.bp | 6 | ||||
-rw-r--r-- | Cargo.toml | 2 | ||||
-rw-r--r-- | Cargo.toml.orig | 2 | ||||
-rw-r--r-- | METADATA | 8 | ||||
-rw-r--r-- | patches/0001-Add-scripts-Android.bp.patch | 63 | ||||
-rwxr-xr-x | scripts/generate_cxx_backend.py | 6 | ||||
-rw-r--r-- | src/backends/rust/parser.rs | 2 | ||||
-rw-r--r-- | tests/generated/packet_decl_fixed_scalar_field_big_endian.rs | 2 | ||||
-rw-r--r-- | tests/generated/packet_decl_fixed_scalar_field_little_endian.rs | 2 |
10 files changed, 82 insertions, 13 deletions
diff --git a/.cargo_vcs_info.json b/.cargo_vcs_info.json index f776014..ee1b6ed 100644 --- a/.cargo_vcs_info.json +++ b/.cargo_vcs_info.json @@ -1,6 +1,6 @@ { "git": { - "sha1": "ff041c0f60f985ecc2f8c90bdec618575dcb5060" + "sha1": "63488f0151c18cc5d2a1e22b1be668464605f43a" }, "path_in_vcs": "" }
\ No newline at end of file @@ -7,7 +7,7 @@ rust_binary_host { name: "generate_canonical_tests", crate_name: "generate_canonical_tests", cargo_env_compat: true, - cargo_pkg_version: "0.1.4", + cargo_pkg_version: "0.1.5", srcs: ["src/bin/generate-canonical-tests.rs"], edition: "2021", features: [ @@ -37,7 +37,7 @@ rust_library_host { name: "libpdl_compiler", crate_name: "pdl_compiler", cargo_env_compat: true, - cargo_pkg_version: "0.1.4", + cargo_pkg_version: "0.1.5", srcs: ["src/lib.rs"], edition: "2021", features: [ @@ -66,7 +66,7 @@ rust_binary_host { name: "pdlc", crate_name: "pdlc", cargo_env_compat: true, - cargo_pkg_version: "0.1.4", + cargo_pkg_version: "0.1.5", srcs: ["src/main.rs"], edition: "2021", features: [ @@ -12,7 +12,7 @@ [package] edition = "2021" name = "pdl-compiler" -version = "0.1.4" +version = "0.1.5" authors = [ "Henri Chataing <henrichataing@google.com>", "David de Jesus Duarte <licorne@google.com>", diff --git a/Cargo.toml.orig b/Cargo.toml.orig index cf8b0cf..a78d3f5 100644 --- a/Cargo.toml.orig +++ b/Cargo.toml.orig @@ -1,6 +1,6 @@ [package] name = "pdl-compiler" -version = "0.1.4" +version = "0.1.5" edition = "2021" description = "Parser and serializer generator for protocol binary packets" repository = "https://github.com/google/pdl/" @@ -1,6 +1,6 @@ # This project was upgraded with external_updater. # Usage: tools/external_updater/updater.sh update rust/crates/pdl-compiler -# For more info, check https://cs.android.com/android/platform/superproject/+/master:tools/external_updater/README.md +# For more info, check https://cs.android.com/android/platform/superproject/+/main:tools/external_updater/README.md name: "pdl-compiler" description: "Parser and serializer generator for protocol binary packets" @@ -11,13 +11,13 @@ third_party { } url { type: ARCHIVE - value: "https://static.crates.io/crates/pdl-compiler/pdl-compiler-0.1.4.crate" + value: "https://static.crates.io/crates/pdl-compiler/pdl-compiler-0.1.5.crate" } - version: "0.1.4" + version: "0.1.5" license_type: NOTICE last_upgrade_date { year: 2023 month: 7 - day: 13 + day: 26 } } diff --git a/patches/0001-Add-scripts-Android.bp.patch b/patches/0001-Add-scripts-Android.bp.patch new file mode 100644 index 0000000..2c2b1f9 --- /dev/null +++ b/patches/0001-Add-scripts-Android.bp.patch @@ -0,0 +1,63 @@ +From 0a7535a664dee90b5f773d8966d4cebb5971bb9d Mon Sep 17 00:00:00 2001 +From: Henri Chataing <henrichataing@google.com> +Date: Wed, 26 Jul 2023 09:38:09 +0000 +Subject: [PATCH] Add scripts/Android.bp + +Change-Id: Iac28b4b30e99467733a65524609eae5e905b6b38 +--- + scripts/Android.bp | 43 +++++++++++++++++++++++++++++++++++++++++++ + 1 file changed, 43 insertions(+) + create mode 100644 scripts/Android.bp + +diff --git a/scripts/Android.bp b/scripts/Android.bp +new file mode 100644 +index 0000000..bb0932c +--- /dev/null ++++ b/scripts/Android.bp +@@ -0,0 +1,43 @@ ++// Python generator. ++python_binary_host { ++ name: "pdl_python_generator", ++ main: "generate_python_backend.py", ++ srcs: [ ++ "generate_python_backend.py", ++ "pdl/ast.py", ++ "pdl/core.py", ++ "pdl/utils.py", ++ ], ++} ++ ++// C++ generator. ++python_binary_host { ++ name: "pdl_cxx_generator", ++ main: "generate_cxx_backend.py", ++ srcs: [ ++ "generate_cxx_backend.py", ++ "pdl/ast.py", ++ "pdl/core.py", ++ "pdl/utils.py", ++ ], ++} ++ ++// C++ test generator. ++python_binary_host { ++ name: "pdl_cxx_unittest_generator", ++ main: "generate_cxx_backend_tests.py", ++ srcs: [ ++ "generate_cxx_backend_tests.py", ++ "pdl/ast.py", ++ "pdl/core.py", ++ "pdl/utils.py", ++ ], ++} ++ ++// C++ packet runtime. ++cc_library_headers { ++ name: "pdl_cxx_packet_runtime", ++ export_include_dirs: ["."], ++ host_supported: true, ++ vendor_available: true, ++} +-- +2.41.0.487.g6d72f3e995-goog + diff --git a/scripts/generate_cxx_backend.py b/scripts/generate_cxx_backend.py index 13ea23d..b4f4efc 100755 --- a/scripts/generate_cxx_backend.py +++ b/scripts/generate_cxx_backend.py @@ -1558,6 +1558,12 @@ def run(input: argparse.FileType, output: argparse.FileType, namespace: Optional using_namespace=using_namespace, open_namespace=open_namespace)) + # Forward declarations for packet classes. + # Required for the friend class specifiers. + for d in file.declarations: + if isinstance(d, ast.PacketDeclaration): + output.write(f"class {d.id}View;\n") + for d in file.declarations: if d.id in skipped_decls: continue diff --git a/src/backends/rust/parser.rs b/src/backends/rust/parser.rs index f837082..01c1720 100644 --- a/src/backends/rust/parser.rs +++ b/src/backends/rust/parser.rs @@ -164,7 +164,7 @@ impl<'a> FieldParser<'a> { let value = proc_macro2::Literal::usize_unsuffixed(*value); quote! { let fixed_value = #v; - if #v != #value { + if fixed_value != #value { return Err(Error::InvalidFixedValue { expected: #value, actual: fixed_value as u64, diff --git a/tests/generated/packet_decl_fixed_scalar_field_big_endian.rs b/tests/generated/packet_decl_fixed_scalar_field_big_endian.rs index 349b183..4d0ecb5 100644 --- a/tests/generated/packet_decl_fixed_scalar_field_big_endian.rs +++ b/tests/generated/packet_decl_fixed_scalar_field_big_endian.rs @@ -78,7 +78,7 @@ impl FooData { } let chunk = bytes.get_mut().get_u64(); let fixed_value = (chunk & 0x7f) as u8; - if (chunk & 0x7f) as u8 != 7 { + if fixed_value != 7 { return Err(Error::InvalidFixedValue { expected: 7, actual: fixed_value as u64, diff --git a/tests/generated/packet_decl_fixed_scalar_field_little_endian.rs b/tests/generated/packet_decl_fixed_scalar_field_little_endian.rs index 96b9064..5d4ba13 100644 --- a/tests/generated/packet_decl_fixed_scalar_field_little_endian.rs +++ b/tests/generated/packet_decl_fixed_scalar_field_little_endian.rs @@ -78,7 +78,7 @@ impl FooData { } let chunk = bytes.get_mut().get_u64_le(); let fixed_value = (chunk & 0x7f) as u8; - if (chunk & 0x7f) as u8 != 7 { + if fixed_value != 7 { return Err(Error::InvalidFixedValue { expected: 7, actual: fixed_value as u64, |