Fix triu/tril for partly initialized matrices (#55312)
This fixes
```julia
julia> using LinearAlgebra, StaticArrays
julia> M = Matrix{BigInt}(undef, 2, 2); M[1,1] = M[2,2] = M[1,2] = 3;
julia> S = SizedMatrix{2,2}(M)
2×2 SizedMatrix{2, 2, BigInt, 2, Matrix{BigInt}} with indices SOneTo(2)×SOneTo(2):
3 3
#undef 3
julia> triu(S)
ERROR: UndefRefError: access to undefined reference
Stacktrace:
[1] getindex
@ ./essentials.jl:907 [inlined]
[2] getindex
@ ~/.julia/packages/StaticArrays/MSJcA/src/SizedArray.jl:92 [inlined]
[3] copyto_unaliased!
@ ./abstractarray.jl:1086 [inlined]
[4] copyto!(dest::SizedMatrix{2, 2, BigInt, 2, Matrix{BigInt}}, src::SizedMatrix{2, 2, BigInt, 2, Matrix{BigInt}})
@ Base ./abstractarray.jl:1066
[5] copymutable
@ ./abstractarray.jl:1200 [inlined]
[6] triu(M::SizedMatrix{2, 2, BigInt, 2, Matrix{BigInt}})
@ LinearAlgebra ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.12/LinearAlgebra/src/generic.jl:413
[7] top-level scope
@ REPL[11]:1
```
After this PR:
```julia
julia> triu(S)
2×2 SizedMatrix{2, 2, BigInt, 2, Matrix{BigInt}} with indices SOneTo(2)×SOneTo(2):
3 3
0 3
```
Only the indices that need to be copied are accessed, and the others are
written to without being read.