diff --git a/xml/issue4483.xml b/xml/issue4483.xml
new file mode 100644
index 0000000000..5e305821ec
--- /dev/null
+++ b/xml/issue4483.xml
@@ -0,0 +1,111 @@
+
+
+
+ As any array type (even of structural types) is not considered an structural type, per
+ As a consequence, `constant_of` currently supports only single-dimensional arrays
+(reflect_constant_array strips outermost extents), while multi-dimensional arrays are
+rejected. Furthermore, `define_static_object` currently uses define_static_array(span(addressof(t), 1)).data(),
+for array types. Since for `T[N]` input this creates an multidimensional `T[1][N]` constant parameter
+object, this function does not support arrays at all. Creating a distinct template
+parameter object leads to emission of (otherwise unnecessary) additional symbols, and breaks the
+invariant that for all supported object types &constant_of(o) == define_static_object(o).
+We should use `reflect_constant_array` for arrays directly. The Throws clause of `reflect_constant_array` was updated to include any exception
+thrown by iteration over range.
+This wording is relative to Modify -8- Let -9- Mandates:
+
+
+
+template<ranges::input_range R>
+ consteval info reflect_constant_array(R&& r);
+
+
+
TU be ranges::range_value_t<R>
+and T be remove_all_extents_<U>
+ei be static_cast<T>(*iti),
+where iti is an iterator to the ith element of `r`.
+
+
+is_constructible_v<T, ranges::range_reference_t<R>> is `true`, and
+
-10- Let `V` be the pack of values of type `info` of the same size as `r`, +where the ith element is +
-11- Let P be +
-12- Returns: ^^P.
+-13- Throws:
+Any exception thrown by increment and dereference operations on iterator to `r` and comparison of such iterator to sentinel.
+Any exception thrown by the evaluation of any argument of `reflect_constant`.ei, or
+`meta::exception` if evaluation of any reflect_constant(ei)evaluation of
+reflect_constant or reflect_constant_array would exit via an exception.
+
+template<class T> + consteval const remove_cvref_t<T>* define_static_object(T&& t); ++
++ + + + + + + + +-15- Effects:Equivalent to:
++using U = remove_cvref_t<T>; +if constexpr (meta::is_class_type(^^U)) { + return addressof(meta::extract<const U&>(meta::reflect_constant(std::forward<T>(t)))); +} else if constexpr (meta::is_array_type(^^U)) { + return addressof(meta::extract<const U&>(meta::reflect_constant_array(std::forward<T>(t)))); +} else { + return define_static_array(span(addressof(t), 1)).data(); +} ++