With all the testing that you have done, are you sure your compiler has the full fix?
Especially line 3964 changed from "14" to "15" ?
DW_AT_upper_bound,DW_FORM_block1,15
Because your objdump looks like it still puts a 14 in there.
You may want to consider using git. That will make updating easier for you.
# clone into directory fpc_git
git clone https://gitlab.com/freepascal.org/fpc/source.git ./fpc_git
# update (if you have no modifications
git pull
# export the source to the build directory
# fpc_source_for_build is where you will run make / and what you will give the IDE as fpc source dir
# this may not copy local modifications / you can modify the export
# if needed, either
rm -rf /path/to/fpc_source_for_build/*
mkdir /path/to/fpc_source_for_build
git --git-dir=/path/to/fpc_git/.git --work-tree=/path/to/fpc_source_for_build restore .
# see modifications you made in your fpc_source_for_build
git --git-dir=/path/to/fpc_git/.git --work-tree=/path/to/fpc_source_for_build diff
# temporary save your changes from fpc_source_for_build
git --git-dir=/path/to/fpc_git/.git --work-tree=/path/to/fpc_source_for_build stash push
# then overwrite fpc_source_for_build with an update
# and restore the changes to fpc_source_for_build
git --git-dir=/path/to/fpc_git/.git --work-tree=/path/to/fpc_source_for_build stash pop
Or make a local branch for your changes, if you go into playing a lot with the fpc sources
Mind you, the above git syntax is way more complex that any git you normally ever find.
This is because a 2nd directory is created for the fpc build process. And we use (abuse) git to copy the files.
You can just copy your entire git dir, and then delete the .git
Then changed files in your git dir will be copied with the changes (in the above you would need to commit them to copy the changes / or add them to the index and use a diff syntax)
So are the blue dots solved then?