usqcd-software/qdpxx — pull request #7 by bglaessle (2014-11-12 14:08:40+00:00)
Title: fixed missing subtype.field() bug

Generally if there any issues with my changes, I am happy to provide refined fixes
if I get some guidance related to the code design.

* the bug appeared because field() member functions where missing
in template instantations of copymask, random, gaussian ...

* the fix mostly allows code to be compiled against qdp++, the result should be ok
for scalar and parscalar builds without threading, but I havent
run any tests! For threaded builds, it is at least slower, if not wrong

* I cannot predict the behaviour for jit, parvecscalar, etc builds
additional fixes might be necessary ...

* two issues worth mentioning:
1. it is an architectural choice how threaded RNG is supposed to behave
(same result as non-threaded? how is this supposed to be enforced?)
2. currently "random(ferm[subset])" and "random(ferm,subset)" might
behave differently (same for gaussian)

* I am unsure about the OSubScalar behaviour, is it correct that
this is simply supposed to be OScalar again, with no effective Subset?