@@ -0,0 +1,1235 @@
+package com.fasterxml.jackson.failing;%0A%0Aimport com.fasterxml.jackson.annotation.JsonSubTypes;%0Aimport com.fasterxml.jackson.annotation.JsonTypeInfo;%0A%0Aimport com.fasterxml.jackson.databind.*;%0A%0Apublic class TestOverlappingTypeIdNames312 extends BaseMapTest%0A%7B%0A    @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, property = %22type%22)%0A    @JsonSubTypes(%7B%0A            @JsonSubTypes.Type(name = %22a%22, value = Impl312.class),%0A            @JsonSubTypes.Type(name = %22b%22, value = Impl312.class)%0A    %7D)%0A    static abstract class Base312 %7B %7D%0A%0A    static class Impl312 extends Base312 %7B%0A        public int x;%0A    %7D%0A    %0A    public void testOverlappingNameDeser() throws Exception%0A    %7B%0A        final ObjectMapper mapper = objectMapper();%0A        Base312 value;%0A%0A        // Ensure both type ids are acceptable%0A%0A        value = mapper.readValue(aposToQuotes(%22%7B'type':'a','x':7%7D%22), Base312.class);%0A        assertNotNull(value);%0A        assertEquals(Impl312.class, value.getClass());%0A        assertEquals(7, ((Impl312) value).x);%0A        %0A        value = mapper.readValue(aposToQuotes(%22%7B'type':'b','x':3%7D%22), Base312.class);%0A        assertNotNull(value);%0A        assertEquals(Impl312.class, value.getClass());%0A        assertEquals(3, ((Impl312) value).x);%0A    %7D%0A%7D%0A

Add a failing test for #312 (no time to work on for 2.5, hope to do in 2.6; non-trivial to solve)