본문으로 건너뛰기
토파즈6.0 · 출시 전
다운로드 →

문서 검색

명세 6.0

방향키로 결과를 고르고 Enter를 눌러 여세요.

API 이름, 진단 번호, 규칙 또는 프로젝트 주제를 입력하세요.

    진단 TPZ5510

    A call supplied a different number of type arguments than the generic declaration has parameters.

    Diagnostic and cause

    링크

    Wrong number of explicit type arguments

    계열
    topaz
    단계
    check
    코드
    TPZ5510

    원인과 조건

    When explicit type arguments are supplied to a generic call, their number must equal the callee's declared type-parameter count. A different nonzero count is rejected with TPZ5510.

    대응

    Supply one type argument for every type parameter, or remove the explicit list when inference can determine all of them.

    Compiler phase: check.

    Compiler explanation: A call supplied a different number of type arguments than the generic declaration has parameters.

    Message templates. The marker ⟨value⟩ stands for text computed for the reported program.

    • this call expects ⟨value⟩ type argument⟨value⟩, but ⟨value⟩ ⟨value⟩ supplied Source

    Observed for the candidate in Topaz 5.21.3. Execution

    • error[TPZ5510]: this call expects 1 type argument, but 2 were supplied

    When explicit type arguments are supplied to a generic call, their number must equal the callee's declared type-parameter count. A different nonzero count is rejected with TPZ5510.

    규칙diagnostics.tpz5510.p5.rule

    Wrong number of explicit type arguments

    When explicit type arguments are supplied to a generic call, their number must equal the callee's declared type-parameter count. A different nonzero count is rejected with TPZ5510.

    Response

    링크

    Supply one type argument for every type parameter, or remove the explicit list when inference can determine all of them.

    Reproduction and verification

    링크

    Rejected program

    링크
    example.tpzRejected program플레이그라운드 열기 →
    1. function identity<T>(value: T) -> T { value }
    2. let result = identity<int, string>(1)
    기대 출력0이 아닌 종료 코드
    표준 출력 없음.
    $ topaz check example.tpz · 대상 제품 5.21.3
    기대 결과

    기대 결과

    거절 단계 check. 종료 코드가 0이 아닙니다.

    Repaired program

    링크
    example.tpzRepaired program
    1. function identity<T>(value: T) -> T { value }
    2. let result = identity<int>(1)
    기대 출력종료 코드 0
    $ topaz check example.tpz · 대상 제품 5.21.3
    기대 결과

    기대 결과

    검사가 프로그램을 받아들입니다. 종료 코드 0.

    메뉴

    다운로드 →