Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 5 of 5 for IsFuncArgStruct (0.16 sec)

  1. src/cmd/compile/internal/types/size.go

    		w = SliceSize
    		CheckSize(t.Elem())
    		t.align = uint8(PtrSize)
    		t.intRegs = 3
    		t.setAlg(ANOEQ)
    		if !t.Elem().NotInHeap() {
    			t.ptrBytes = int64(PtrSize)
    		}
    
    	case TSTRUCT:
    		if t.IsFuncArgStruct() {
    			base.Fatalf("CalcSize fn struct %v", t)
    		}
    		CalcStructSize(t)
    		w = t.width
    
    	// make fake type to check later to
    	// trigger function argument computation.
    	case TFUNC:
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 15K bytes
    - Viewed (0)
  2. src/cmd/compile/internal/types/type.go

    // FuncArgs returns the func type for TFUNCARGS type t.
    func (t *Type) FuncArgs() *Type {
    	t.wantEtype(TFUNCARGS)
    	return t.extra.(FuncArgs).T
    }
    
    // IsFuncArgStruct reports whether t is a struct representing function parameters or results.
    func (t *Type) IsFuncArgStruct() bool {
    	return t.kind == TSTRUCT && t.extra.(*Struct).ParamTuple
    }
    
    // Methods returns a pointer to the base methods (excluding embedding) for type t.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Apr 04 14:29:45 UTC 2024
    - 49.5K bytes
    - Viewed (0)
  3. src/cmd/compile/internal/typecheck/typecheck.go

    		}
    	}
    
    	if n.Typecheck() == 2 {
    		base.FatalfAt(n.Pos(), "typechecking loop")
    	}
    
    	n.SetTypecheck(2)
    	n = typecheck1(n, top)
    	n.SetTypecheck(1)
    
    	t := n.Type()
    	if t != nil && !t.IsFuncArgStruct() && n.Op() != ir.OTYPE {
    		switch t.Kind() {
    		case types.TFUNC, // might have TANY; wait until it's called
    			types.TANY, types.TFORW, types.TIDEAL, types.TNIL, types.TBLANK:
    			break
    
    		default:
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Mar 20 19:08:34 UTC 2024
    - 30.5K bytes
    - Viewed (0)
  4. src/cmd/compile/internal/typecheck/stmt.go

    		if typ != nil {
    			checkassignto(typ, lhs[i])
    		}
    	}
    
    	cr := len(rhs)
    	if len(rhs) == 1 {
    		rhs[0] = typecheck(rhs[0], ctxExpr|ctxMultiOK)
    		if rtyp := rhs[0].Type(); rtyp != nil && rtyp.IsFuncArgStruct() {
    			cr = rtyp.NumFields()
    		}
    	} else {
    		Exprs(rhs)
    	}
    
    	// x, ok = y
    assignOK:
    	for len(lhs) == 2 && cr == 1 {
    		stmt := stmt.(*ir.AssignListStmt)
    		r := rhs[0]
    
    		switch r.Op() {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Nov 20 15:10:54 UTC 2023
    - 17.8K bytes
    - Viewed (0)
  5. src/cmd/compile/internal/walk/expr.go

    		base.Fatalf("expression has untyped type: %+v", n)
    	}
    
    	n = walkExpr1(n, init)
    
    	// Eagerly compute sizes of all expressions for the back end.
    	if typ := n.Type(); typ != nil && typ.Kind() != types.TBLANK && !typ.IsFuncArgStruct() {
    		types.CheckSize(typ)
    	}
    	if n, ok := n.(*ir.Name); ok && n.Heapaddr != nil {
    		types.CheckSize(n.Heapaddr.Type())
    	}
    	if ir.IsConst(n, constant.String) {
    		// Emit string symbol now to avoid emitting
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 04 17:34:01 UTC 2024
    - 27.6K bytes
    - Viewed (0)
Back to top