Skip to content

feat(parser): cover grammar edge case validation#174

Merged
ohah merged 2 commits intomainfrom
feature/cover-grammar-edge-cases
Mar 20, 2026
Merged

feat(parser): cover grammar edge case validation#174
ohah merged 2 commits intomainfrom
feature/cover-grammar-edge-cases

Conversation

@ohah
Copy link
Copy Markdown
Owner

@ohah ohah commented Mar 20, 2026

Summary

  • Object rest-not-last 검증: {...rest, b} → SyntaxError
  • Method in destructuring 검증: [{ get x() {} }] → SyntaxError
  • Array rest trailing comma 검증: [...x,] → SyntaxError
    • parseArrayExpression에서 spread+comma+] 패턴 감지, flags 0x01 마킹
    • coverArrayExpressionToTarget에서 flags 확인 후 에러 보고

Test plan

  • zig build test 통과
  • zig fmt --check src/ 통과
  • zig build test262-run 436건 실패 (457 → 436, -21건), 98.1%

🤖 Generated with Claude Code

- Object rest-not-last: {...rest, b} → SyntaxError
- Method in destructuring: [{ get x() {} }] = [] → SyntaxError
- Array rest trailing comma: [...x,] → SyntaxError
  (parseArrayExpression에서 spread+comma+] 감지, flags 0x01 마킹)

Test262: 457 → 436건 (-21건), 98.1%.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@ohah ohah added the enhancement New feature or request label Mar 20, 2026
@ohah ohah self-assigned this Mar 20, 2026
@ohah ohah added the enhancement New feature or request label Mar 20, 2026
- 연산자 우선순위 수정: (flags & 0x01) != 0 괄호 추가
- 매직 넘버 0x01 → spread_trailing_comma 상수로 추출

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@ohah ohah merged commit 86e0d84 into main Mar 20, 2026
9 checks passed
ohah added a commit that referenced this pull request Mar 20, 2026
- Parser Design: Context packed struct(u8) 분리, Cover Grammar 변환 문서화
- semantic analysis: Context u8 분리 + cover grammar 변환 완료 표시 (PR #168~#174)
- Test262: 98.1% (436건 실패)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant