abstract field access is always static
do not try to shorten this = call() initialization because it could access `this` (closes #2277)