ADDITIONAL SYSTEM INFORMATION :
macos/JDK14
A DESCRIPTION OF THE PROBLEM :
Hour can be represented as an ChronoField.CLOCK_HOUR_OF_DAY, CLOCK_HOUR_OF_AMPM, HOUR_OF_AMPM and HOUR_OF_DAY
all these are resolved to HOUR_OF_DAY during resolving phase (see Parsed.resolveTimeFIelds)
using a pattern with parseDefaulting leads to a an exception suggesting a conflict being thrown.
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
 DateTimeFormatter dateTimeFormatterWithDefault = new DateTimeFormatterBuilder()
            .appendPattern("dd-MM-uuuu hh:mm a")
            .parseDefaulting(ChronoField.HOUR_OF_DAY, 23L)
            .toFormatter();
        TemporalAccessor parsingFails = dateTimeFormatterWithDefault.parse("01-01-2020 01:01 AM");
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
assertEquals(01, parsingFails.get(ChronoField.HOUR_OF_DAY));
assertEquals(01, parsingFails.get(ChronoField.HOUR_OF_AMPM));
ACTUAL -
java.time.format.DateTimeParseException: Text '01-01-2020 01:01 AM' could not be parsed: Conflict found: HourOfDay 23 differs from HourOfDay 1 while resolving  AmPmOfDay
	at java.base/java.time.format.DateTimeFormatter.createError(DateTimeFormatter.java:2020)
	at java.base/java.time.format.DateTimeFormatter.parse(DateTimeFormatter.java:1881)
---------- BEGIN SOURCE ----------
public void testX(){
        DateTimeFormatter dateTimeFormatter = new DateTimeFormatterBuilder()
            .appendPattern("dd-MM-uuuu hh:mm a")
            .toFormatter();
        TemporalAccessor parse = dateTimeFormatter.parse("01-01-2020 01:01 AM");
        assertTrue(parse.isSupported(ChronoField.HOUR_OF_DAY));
        assertTrue(parse.isSupported(ChronoField.HOUR_OF_AMPM));
        assertEquals(01, parse.get(ChronoField.HOUR_OF_DAY));
        assertEquals(01, parse.get(ChronoField.HOUR_OF_AMPM));
        //Parsed.resolveTimeFields() resolves hour field to HOUR_OF_DAY
        DateTimeFormatter dateTimeFormatterWithDefault = new DateTimeFormatterBuilder()
            .appendPattern("dd-MM-uuuu hh:mm a")
            .parseDefaulting(ChronoField.HOUR_OF_DAY, 23L)
            .toFormatter();
        TemporalAccessor parsingFails = dateTimeFormatterWithDefault.parse("01-01-2020 01:01 AM");
        /*
java.time.format.DateTimeParseException: Text '01-01-2020 01:01 AM' could not be parsed: Conflict found: HourOfDay 23 differs from HourOfDay 1 while resolving  AmPmOfDay
	at java.base/java.time.format.DateTimeFormatter.createError(DateTimeFormatter.java:2020)
	at java.base/java.time.format.DateTimeFormatter.parse(DateTimeFormatter.java:1881)
         */
    }
---------- END SOURCE ----------
FREQUENCY : always