Hi Danilo,
Em Tue, 28 Jul 2015 16:45:16 -0300 Danilo Cesar Lemes de Paula danilo.cesar@collabora.co.uk escreveu:
The "highlight" code is very sensible to the order of the hash keys, but the order of the keys cannot be predicted on Perl. It generates faulty DocBook entries like:
- @<function>device_for_each_child</function>
We should use an array for that job, so we can guarantee that the order of the regex execution on dohighlight won't change.
...
@@ -2587,9 +2601,11 @@ $kernelversion = get_kernel_version();
# generate a sequence of code that will splice in highlighting information # using the s// operator. -foreach my $pattern (keys %highlights) { -# print STDERR "scanning pattern:$pattern, highlight:($highlights{$pattern})\n";
- $dohighlight .= "$contents =~ s:$pattern:$highlights{$pattern}:gs;\n";
+foreach my $k (keys @highlights) {
The above causes some versions of perl to fail, as keys expect a hash argument:
Execution of .//scripts/kernel-doc aborted due to compilation errors. Type of arg 1 to keys must be hash (not private array) at .//scripts/kernel-doc line 2714, near "@highlights) "
This is happening at linuxtv.org server, with runs perl version 5.10.1.
I had to revert this patch in order to be able to keep building the documentation of the media kABI on our server.
Regards, Mauro