pw_rpc: Fix lock.h from gcc bug

A gcc bug in 8.4 is causing an error when parsing [[maybe_unused]]
when it's the first parameter. Reordering fixes the issue.

Context: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81429
Change-Id: Ib6dd90e87de5dc7213ebbc5ad07105a9c7998421
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/85840
Reviewed-by: Wyatt Hepler <hepler@google.com>
Commit-Queue: Rob Oliver <rgoliver@google.com>
1 file changed
tree: b2b86d3647f41c981f7edc3511ec214a66634df4
  1. build_overrides/
  2. docker/
  3. docs/
  4. pw_allocator/
  5. pw_analog/
  6. pw_android_toolchain/
  7. pw_arduino_build/
  8. pw_assert/
  9. pw_assert_basic/
  10. pw_assert_log/
  11. pw_assert_tokenized/
  12. pw_assert_zephyr/
  13. pw_base64/
  14. pw_bloat/
  15. pw_blob_store/
  16. pw_bluetooth_hci/
  17. pw_boot/
  18. pw_boot_cortex_m/
  19. pw_build/
  20. pw_build_info/
  21. pw_build_mcuxpresso/
  22. pw_bytes/
  23. pw_checksum/
  24. pw_chrono/
  25. pw_chrono_embos/
  26. pw_chrono_freertos/
  27. pw_chrono_stl/
  28. pw_chrono_threadx/
  29. pw_chrono_zephyr/
  30. pw_cli/
  31. pw_console/
  32. pw_containers/
  33. pw_cpu_exception/
  34. pw_cpu_exception_cortex_m/
  35. pw_crypto/
  36. pw_docgen/
  37. pw_doctor/
  38. pw_env_setup/
  39. pw_file/
  40. pw_function/
  41. pw_fuzzer/
  42. pw_hdlc/
  43. pw_hex_dump/
  44. pw_i2c/
  45. pw_i2c_mcuxpresso/
  46. pw_interrupt/
  47. pw_interrupt_cortex_m/
  48. pw_interrupt_zephyr/
  49. pw_kvs/
  50. pw_libc/
  51. pw_log/
  52. pw_log_basic/
  53. pw_log_null/
  54. pw_log_rpc/
  55. pw_log_string/
  56. pw_log_tokenized/
  57. pw_log_zephyr/
  58. pw_malloc/
  59. pw_malloc_freelist/
  60. pw_metric/
  61. pw_minimal_cpp_stdlib/
  62. pw_module/
  63. pw_multisink/
  64. pw_package/
  65. pw_persistent_ram/
  66. pw_polyfill/
  67. pw_preprocessor/
  68. pw_presubmit/
  69. pw_protobuf/
  70. pw_protobuf_compiler/
  71. pw_random/
  72. pw_result/
  73. pw_ring_buffer/
  74. pw_router/
  75. pw_rpc/
  76. pw_snapshot/
  77. pw_software_update/
  78. pw_span/
  79. pw_spi/
  80. pw_status/
  81. pw_stm32cube_build/
  82. pw_stream/
  83. pw_string/
  84. pw_symbolizer/
  85. pw_sync/
  86. pw_sync_baremetal/
  87. pw_sync_embos/
  88. pw_sync_freertos/
  89. pw_sync_stl/
  90. pw_sync_threadx/
  91. pw_sync_zephyr/
  92. pw_sys_io/
  93. pw_sys_io_arduino/
  94. pw_sys_io_baremetal_lm3s6965evb/
  95. pw_sys_io_baremetal_stm32f429/
  96. pw_sys_io_mcuxpresso/
  97. pw_sys_io_stdio/
  98. pw_sys_io_stm32cube/
  99. pw_sys_io_zephyr/
  100. pw_system/
  101. pw_target_runner/
  102. pw_thread/
  103. pw_thread_embos/
  104. pw_thread_freertos/
  105. pw_thread_stl/
  106. pw_thread_threadx/
  107. pw_tls_client/
  108. pw_tls_client_boringssl/
  109. pw_tls_client_mbedtls/
  110. pw_tokenizer/
  111. pw_tool/
  112. pw_toolchain/
  113. pw_trace/
  114. pw_trace_tokenized/
  115. pw_transfer/
  116. pw_unit_test/
  117. pw_varint/
  118. pw_watch/
  119. pw_web_ui/
  120. pw_work_queue/
  121. targets/
  122. third_party/
  123. zephyr/
  124. .bazelignore
  125. .bazelrc
  126. .clang-format
  127. .clang-tidy
  128. .eslintrc.json
  129. .gitattributes
  130. .gitignore
  131. .gn
  132. .prettierrc.js
  133. .pylintrc
  134. activate.bat
  135. Android.bp
  136. AUTHORS
  137. bootstrap.bat
  138. bootstrap.sh
  139. BUILD.bazel
  140. BUILD.gn
  141. BUILDCONFIG.gn
  142. CMakeLists.txt
  143. Kconfig.zephyr
  144. LICENSE
  145. modules.gni
  146. OWNERS
  147. package.json
  148. PIGWEED_MODULES
  149. PW_PLUGINS
  150. README.md
  151. tsconfig.json
  152. WORKSPACE
  153. yarn.lock
README.md

Pigweed

Pigweed is an open source collection of embedded-targeted libraries–or as we like to call them, modules. These modules are building blocks and infrastructure that enable faster and more reliable development on small-footprint MMU-less 32-bit microcontrollers like the STMicroelectronics STM32L452 or the Nordic nRF52832.

For more information please see our website: https://pigweed.dev/

Links