Variable "i" can not be read at compile time
data pulverizer
data.pulverizer at gmail.com
Sun May 24 16:34:25 UTC 2020
Hi all,
I'm getting the error:
```
Error: variable i cannot be read at compile time
Error: template instance
script.runKernelBenchmarks!(Tuple!(DotProduct!float,
Gaussian!float, Polynomial!float, Exponential!float, Log!float,
Cauchy!float, Power!float, Wave!float, Sigmoid!float)) error
instantiating
```
When I run ...
```
...
auto runKernelBenchmarks(KS)(KS kernels, long[] n, bool verbose =
true)
{
auto tmp = bench(kernels[0], n, verbose);
alias R = typeof(tmp);
R[] results = new R[kernels.length];
results[0] = tmp;
for(size_t i = 1; i < results.length; ++i)
{
results[i] = bench(kernels[i], n, verbose);
}
return results;
}
void main()
{
alias T = float;
auto kernels = tuple(DotProduct!(T)(), Gaussian!(T)(1),
Polynomial!(T)(2.5f, 1),
Exponential!(T)(1), Log!(T)(3),
Cauchy!(T)(1),
Power!(T)(2.5f), Wave!(T)(1),
Sigmoid!(T)(1, 1));
string[] kernelNames = ["DotProduct", "Gaussian", "Polynomial",
"Exponential", "Log", "Cauchy",
"Power", "Wave", "Sigmoid"];
long[] n = [100L, 500L, 1000L];
auto results = runKernelBenchmarks(kernels, n);
writeln("Results: ", results);
}
```
Thanks
More information about the Digitalmars-d-learn
mailing list