Calling typeid(int[3][2]).name() returns the string "A3_A2_i" which I think is correct (though I am unfamiliar with all the mangling rules). However, demangling this name returns "int[2][3]" so either the typeid().name() string is wrong, or the demangled name is wrong.
Same behavior on 3.2 and 3.3.3. See attached files. -- Summary: typeid/demangle for multidimensional array returns wrong name Product: gcc Version: 3.3.3 Status: UNCONFIRMED Severity: normal Priority: P2 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: jody-atd-030903 at atdesk dot com CC: gcc-bugs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20200