We now have separate Expr implementations for dereferencing pointers and automatically dereferencing references. This is in particular necessary so that we can detect attempts to dereference references with the '*' operator in programs and issue an error in that case. Fixes issue #192.
11 lines
314 B
Plaintext
11 lines
314 B
Plaintext
// Illegal to dereference non-pointer type "uniform float &".
|
|
|
|
export void simple_reduction(uniform float vin[], uniform int w, uniform float & result)
|
|
{
|
|
float sum = 0;
|
|
foreach (i = 0 ... w) {
|
|
sum += vin[i];
|
|
}
|
|
*result = reduce_add(sum); // << I would expect this to produce a compiler error
|
|
}
|