-Warray-bounds when accessing seq with offset positive offset on cpp backend
### Description

test.nim:

```nim
let sp = @[1, 2]
echo sp[1]
```

`$ nim cpp -f test.nim`

```
/Users/niv/.cache/nim/test_d/@mtest.nim.cpp:146:11: warning: array index 1 is past the end of the array (which contains 1 element) [-Warray-bounds]
        T1_[0] = sp__test_u2.p->data[((NI)1)];
                 ^                    ~~~~~
/Users/niv/.cache/nim/test_d/@mtest.nim.cpp:52:62: note: array 'data' declared here
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE]; };
```

- This seems a regression:  I see this on 2.0.8. I did not see this on 1.6.20.
- `echo sp[0]` does not produce the warning.
- Warning occurs on appleclang (Mac aarch64) and gcc (Linux aarch64).
- Warning does not manifest when using the `c` compile target.
- Produced binary runs correctly and emits the expected output.


### Nim Version

Nim Compiler Version 2.0.8 [MacOSX: arm64]
Compiled at 2024-07-03
Copyright (c) 2006-2023 by Andreas Rumpf

active boot switches: -d:release

### Current Output

_No response_

### Expected Output

_No response_

### Possible Solution

_No response_

### Additional Information

_No response_