docs: private void passThisReference(ConstructorCallExpression call) {
          ClassNode cn = call.getType().redirect();
          if (!shouldHandleImplicitThisForInnerClass(cn)) return;
  
          boolean isInStaticContext = true;
          if (currentMethod != null)
              isInStaticContext = currentMethod.getVariableScope().isInStaticContext();
          else if (currentField != null)
              isInStaticContext = currentField.isStatic();
          else if (processingObjInitStatements)
              isInStaticContext = false;
  
          // if constructor call is not in static context, return
          if (isInStaticContext) {
              // constructor call is in static context and the inner class is non-static - 1st arg is supposed to be 
              // passed as enclosing "this" instance
              //
              Expression args = call.getArguments();
              if (args instanceof TupleExpression && ((TupleExpression) args).getExpressions().isEmpty()) {
                  addError("No enclosing instance passed in constructor call of a non-static inner class", call);
              }
              return;
          }
          insertThis0ToSuperCall(call, cn);
  
      }