This is an automated email from the ASF dual-hosted git repository.

acassis pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git

commit 8e283e3acd437621c85c561e46149aae4b8fbfe0
Author: Marco Casaroli <[email protected]>
AuthorDate: Tue Oct 6 23:01:32 2026 +0200

    boards/pimoroni-pico-2-plus: Define _sinit and _einit.
    
    The linker scripts of the board name the bounds of .init_array the way the
    Pico SDK does, __init_array_start and __init_array_end, and do not
    define _sinit and _einit.  lib_cxx_initialize() walks _sinit to _einit,
    so a configuration with CONFIG_HAVE_CXXINITIALIZE does not link:
    "undefined reference to `_sinit'".
    
    Define _sinit and _einit at the same places in the three scripts.
    
    Assisted-by: Claude Code:claude-opus-5-5
    Signed-off-by: Marco Casaroli <[email protected]>
---
 boards/arm/rp23xx/pimoroni-pico-2-plus/scripts/memmap_copy_to_ram.ld | 2 ++
 boards/arm/rp23xx/pimoroni-pico-2-plus/scripts/memmap_default.ld     | 2 ++
 boards/arm/rp23xx/pimoroni-pico-2-plus/scripts/memmap_no_flash.ld    | 2 ++
 3 files changed, 6 insertions(+)

diff --git 
a/boards/arm/rp23xx/pimoroni-pico-2-plus/scripts/memmap_copy_to_ram.ld 
b/boards/arm/rp23xx/pimoroni-pico-2-plus/scripts/memmap_copy_to_ram.ld
index efb4a7d6d84..b269d63f62e 100644
--- a/boards/arm/rp23xx/pimoroni-pico-2-plus/scripts/memmap_copy_to_ram.ld
+++ b/boards/arm/rp23xx/pimoroni-pico-2-plus/scripts/memmap_copy_to_ram.ld
@@ -213,9 +213,11 @@ SECTIONS
         . = ALIGN(4);
         /* init data */
         PROVIDE_HIDDEN (__init_array_start = .);
+        _sinit = .;
         KEEP(*(SORT(.init_array.*)))
         KEEP(*(.init_array))
         PROVIDE_HIDDEN (__init_array_end = .);
+        _einit = .;
 
         . = ALIGN(4);
         /* finit data */
diff --git a/boards/arm/rp23xx/pimoroni-pico-2-plus/scripts/memmap_default.ld 
b/boards/arm/rp23xx/pimoroni-pico-2-plus/scripts/memmap_default.ld
index 7e833a433a2..f54458c5ac8 100644
--- a/boards/arm/rp23xx/pimoroni-pico-2-plus/scripts/memmap_default.ld
+++ b/boards/arm/rp23xx/pimoroni-pico-2-plus/scripts/memmap_default.ld
@@ -116,9 +116,11 @@ SECTIONS
         . = ALIGN(4);
         /* init data */
         PROVIDE_HIDDEN (__init_array_start = .);
+        _sinit = .;
         KEEP(*(SORT(.init_array.*)))
         KEEP(*(.init_array))
         PROVIDE_HIDDEN (__init_array_end = .);
+        _einit = .;
 
         . = ALIGN(4);
         /* finit data */
diff --git a/boards/arm/rp23xx/pimoroni-pico-2-plus/scripts/memmap_no_flash.ld 
b/boards/arm/rp23xx/pimoroni-pico-2-plus/scripts/memmap_no_flash.ld
index 19dedcb0307..2be7462c80e 100644
--- a/boards/arm/rp23xx/pimoroni-pico-2-plus/scripts/memmap_no_flash.ld
+++ b/boards/arm/rp23xx/pimoroni-pico-2-plus/scripts/memmap_no_flash.ld
@@ -162,9 +162,11 @@ SECTIONS
         . = ALIGN(4);
         /* init data */
         PROVIDE_HIDDEN (__init_array_start = .);
+        _sinit = .;
         KEEP(*(SORT(.init_array.*)))
         KEEP(*(.init_array))
         PROVIDE_HIDDEN (__init_array_end = .);
+        _einit = .;
 
         . = ALIGN(4);
         /* finit data */

Reply via email to