[PATCH v2 2/4] scripts/kernel-doc: Replacing highlights hash by an array
Mauro Carvalho Chehab
mchehab at osg.samsung.com
Tue Nov 17 02:40:46 PST 2015
Hi Danilo,
Em Tue, 28 Jul 2015 16:45:16 -0300
Danilo Cesar Lemes de Paula <danilo.cesar at 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
More information about the dri-devel
mailing list