+/* Returns a new ident that represents 'prefixscndsuffix'. */
+static ident *mangle3(const char *prefix, ident *scnd, const char *suffix) {
+ char *cp;
+ int len;
+ ident *res;
+
+ obstack_grow(&mangle_obst, prefix, strlen(prefix));
+ obstack_grow(&mangle_obst, get_id_str(scnd), get_id_strlen(scnd));
+ obstack_grow(&mangle_obst, suffix, strlen(suffix));
+ len = obstack_object_size (&mangle_obst);
+ cp = obstack_finish (&mangle_obst);
+ res = new_id_from_chars (cp, len);
+ obstack_free (&mangle_obst, cp);
+ return res;
+}
+
+/* Returns a new ident that represents first_scnd. */
+ident *mangle_u (ident *first, ident* scnd) {
+ char *cp;
+ int len;
+ ident *res;
+
+ obstack_grow(&mangle_obst, get_id_str(first), get_id_strlen(first));
+ obstack_1grow(&mangle_obst,'_');
+ obstack_grow(&mangle_obst,get_id_str(scnd),get_id_strlen(scnd));