[ 
https://issues.apache.org/jira/browse/GROOVY-12594?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18135577#comment-18135577
 ] 

ASF GitHub Bot commented on GROOVY-12594:
-----------------------------------------

codecov-commenter commented on PR #3121:
URL: https://github.com/apache/groovy/pull/3121#issuecomment-6539486527

   ## 
[Codecov](https://app.codecov.io/gh/apache/groovy/pull/3121?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
 Report
   :x: Patch coverage is `77.27273%` with `5 lines` in your changes missing 
coverage. Please review.
   :white_check_mark: Project coverage is 74.1175%. Comparing base 
([`cd944a5`](https://app.codecov.io/gh/apache/groovy/commit/cd944a5f0ee353126e6f6a484f574b4b53e555fd?dropdown=coverage&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache))
 to head 
([`1bd5b58`](https://app.codecov.io/gh/apache/groovy/commit/1bd5b58f363848bbae9eef83a4083d0bdfcd82e1?dropdown=coverage&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)).
   :warning: Report is 1 commits behind head on master.
   
   | [Files with missing 
lines](https://app.codecov.io/gh/apache/groovy/pull/3121?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
 | Patch % | Lines |
   |---|---|---|
   | 
[...oovy/transform/stc/TraitTypeCheckingExtension.java](https://app.codecov.io/gh/apache/groovy/pull/3121?src=pr&el=tree&filepath=src%2Fmain%2Fjava%2Forg%2Fcodehaus%2Fgroovy%2Ftransform%2Fstc%2FTraitTypeCheckingExtension.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c3JjL21haW4vamF2YS9vcmcvY29kZWhhdXMvZ3Jvb3Z5L3RyYW5zZm9ybS9zdGMvVHJhaXRUeXBlQ2hlY2tpbmdFeHRlbnNpb24uamF2YQ==)
 | 77.2727% | [0 Missing and 5 partials :warning: 
](https://app.codecov.io/gh/apache/groovy/pull/3121?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
 |
   
   <details><summary>Additional details and impacted files</summary>
   
   
   
   [![Impacted file tree 
graph](https://app.codecov.io/gh/apache/groovy/pull/3121/graphs/tree.svg?width=650&height=150&src=pr&token=1r45138NfQ&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)](https://app.codecov.io/gh/apache/groovy/pull/3121?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
   
   ```diff
   @@                Coverage Diff                 @@
   ##               master      #3121        +/-   ##
   ==================================================
   + Coverage     74.1016%   74.1175%   +0.0159%     
   - Complexity      43596      43614        +18     
   ==================================================
     Files            1692       1692                
     Lines          149245     149267        +22     
     Branches        28284      28295        +11     
   ==================================================
   + Hits           110593     110633        +40     
   + Misses          28475      28451        -24     
   - Partials        10177      10183         +6     
   ```
   
   | [Files with missing 
lines](https://app.codecov.io/gh/apache/groovy/pull/3121?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
 | Coverage Δ | |
   |---|---|---|
   | 
[...oovy/transform/stc/TraitTypeCheckingExtension.java](https://app.codecov.io/gh/apache/groovy/pull/3121?src=pr&el=tree&filepath=src%2Fmain%2Fjava%2Forg%2Fcodehaus%2Fgroovy%2Ftransform%2Fstc%2FTraitTypeCheckingExtension.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c3JjL21haW4vamF2YS9vcmcvY29kZWhhdXMvZ3Jvb3Z5L3RyYW5zZm9ybS9zdGMvVHJhaXRUeXBlQ2hlY2tpbmdFeHRlbnNpb24uamF2YQ==)
 | `80.1980% <77.2727%> (-0.8146%)` | :arrow_down: |
   
   ... and [16 files with indirect coverage 
changes](https://app.codecov.io/gh/apache/groovy/pull/3121/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
   </details>
   <details><summary> :rocket: New features to boost your workflow: </summary>
   
   - :snowflake: [Test 
Analytics](https://docs.codecov.com/docs/test-analytics): Detect flaky tests, 
report on failures, and find test suite problems.
   - :package: [JS Bundle 
Analysis](https://docs.codecov.com/docs/javascript-bundle-analysis): Save 
yourself from yourself by tracking and limiting bundle sizes in JS merges.
   </details>




> STC rejects a @Virtual trait static accessor read or written with property 
> syntax
> ---------------------------------------------------------------------------------
>
>                 Key: GROOVY-12594
>                 URL: https://issues.apache.org/jira/browse/GROOVY-12594
>             Project: Groovy
>          Issue Type: Bug
>    Affects Versions: 6.0.0
>            Reporter: Scott Murphy Heiberg
>            Priority: Major
>
> {code:groovy}
> import groovy.transform.Virtual
> @groovy.transform.CompileStatic
> trait T {
>     @Virtual static boolean isVr() { false }
>     static String sm() { vr ? 'yes' : 'no' }
> }
> class C implements T { static boolean isVr() { true } }
> class D implements T { }
> assert [C.sm(), D.sm()] == ['yes', 'no']
> {code}
> Actual: {{[Static type checking] - No such property: vr for Class or static 
> property for class: T}} with {{@CompileStatic}} or {{@TypeChecked}}. The same 
> error occurs in instance trait methods, for a @Virtual setter written as an 
> assignment or compound assignment, and for a @Virtual accessor of a super 
> trait. The method form {{isVr()}} compiles, and dynamic Groovy runs the 
> script.
> Expected: the script compiles, and the property reads and writes dispatch 
> through the implementing class like {{isVr()}} does, giving {{yes}} for {{C}} 
> and {{no}} for {{D}}.
> A @Virtual static is not promoted to the trait interface, so the type checker 
> finds no property on the trait for the receiver that the trait transformation 
> produces. The method form is resolved through the trait type checking 
> extension; the property form is not.
> Seen in 6.0.0 (the first version with @Virtual).
> PR: https://github.com/apache/groovy/pull/3121



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

Reply via email to