The problem is line 1008: you have a double look-ahead pattern, just remove the last one:
(?=^\s*(?i:(class procedure|class function|function|procedure|constructor|destructor))\s+([A-Za-z_][A-Za-z0-9_]*))
I do not think having a look-ahead inside a look-ahead is valid, so I would tend to believe that behavior is now correct.
Edit: Looking a bit more at your syntax file, this is actually happening multiple times so you might want to look at every occurence of those double look-ahead pattern.
Also you are using multiple times \n in your regex: I’m not sure that it works, sublime run it’s grammar line by line, so maybe you should replace it by $
Also line 810 you have a patterns array inside a patterns array: this prevent the conversion tool to works correctly, not sure if it affects the highlighting too but it might be a good idea to fix it anyway.