When the symbol is placed on the Schematic, the pin no longer displays the circle. However, the symbol pins do operate correctly when connected to wires. ie. pin 2 behaves the same as pin 1 and pin 4 behave as pin 3.
The behavior certainly is a bit weird / unusual, but I am not convinced there is a bug. I find it hard to classify how the Free pin type should behave.
First, I had to look it up in the manual:
Pin type Free
A pin that does not electrically affect the operation of the device. These pins typically represent package leads that are not internally connected to the chip. The default Pin Conflicts settings allow free pins to connect to most other types of pin.
In the PCB editor, pads corresponding to free pins can be connected to copper of any other net without causing a DRC error.
So, I took a connector, and set pin number 3 to the “Free” pin type. In the pin preview there is no circle, while in the symbol itself, the circle is shown. This is a bit confusing behavior.
Back in the schematic editor. The free pin does not show a circle. It also doe not throw an ERC error when left open. According to the pin type description this is correct.
In the PCB editor, I can route a connection through the free pin 3, but the interactive router resists me when I attempt to the unconnected pin 2. This is also according to the description.
KiCad does allow an explicit connection to pin 3 (it acts as a normal pin, auto wire starts from it’s attachment point).
Kicad now throws a DRC violation because it is no longer a “free” pin because of the explicit connection. It also shows the ratsnest line according to the connection in the schematic.
So as far as I can see, there is no bug. Showing the pin circle in the footprint editor is also probably intended. Otherwise it would be hard to see the difference between left / right of the pin. An improvement could be to add a greyed out “unconnected” cross to the pin circle to indicate it is OK to leave it open.