IPv6 fragment that does not include all headers through an Upper-Layer header

Ubuntu 22.04

RFC8200 regarding Fragment Header specifies the following:

  o  If the first fragment does not include all headers through an
     Upper-Layer header, then that fragment should be discarded and
     an ICMP Parameter Problem, Code 3, message should be sent to
     the source of the fragment, with the Pointer field set to zero.

Does it mean that if I send a fragment consisting of the following headers:

IPv6 Header -- next_header --> Fragment header -- next_header --> No Next Header

The ICMP Parameter Problem, Code 3 should be expected? The issue is I could not reproduce it on Ubuntu 22.04. Consider 2 cases:

I. Sending fragment with no payload

scapy:

ip6 = IPv6(src = "xxxx::xxxx", dst = "yyyy::yyyy")
frag1 = IPv6ExtHdrFragment(id=0x333, m = 1)
send(ip6 / frag1)

tcpdump:

01:58:33.859135 IP6 (hlim 64, next-header Fragment (44) payload length: 8) 
  xxxx::xxxx > yyyy::yyyy: frag (0x00000333:0|0) 

I see neither ICMP Parameter Problem, nor ICMP6, time exceeded in-transit (reassembly) which looks like it’s silently discarded.

II. Sending fragment with 8 octet raw payload

When sending a fragment with 8 octet raw payload I see it’s being time-outed after 60 seconds (as described in the RFC).

scapy:

ip6 = IPv6(src = "xxxx::xxxx", dst = "yyyy::yyyy")
frag1 = IPv6ExtHdrFragment(id = 0x543, m = 1)
send(ip6 / frag1 / Raw("12345678"))

tcpdump:

02:07:21.246081 IP6 (hlim 64, next-header Fragment (44) payload length: 16) 
  xxxx::xxxx > yyyy::yyyy: frag (0x00000543:0|8) no next header

02:08:22.170257 IP6 (flowlabel 0x11111, hlim 64, next-header ICMPv6 (58) payload length: 64) 
  xxxx::xxxx > yyyy::yyyy: [icmp6 sum ok] ICMP6, time exceeded in-transit (reassembly)

Is silently discarding a packet with no first fragment payload expected behavior or I missing something?