Bug Pattern in Scala

From stap
Jump to: navigation, search
本周三(16,Dec)晚7:00,电院2号楼东313实验室答疑。
程序分析与合成sjtu 讨论QQ群: 522750166

project提交:1、请按下面bug pattern List表格提交, Bug Finds请标明在bug的位置信息; 2、detector代码和false positive的处理,其他代码等。


- 常见问题



Contents

Bug Pattern List

Sequence Pattern Name Severity #Bug Finds Brief Descrption Submitter
1 CFTI MID # Comparing floating type #
2 CTT MID # Compare type tags with “==” #
3 DEV HIGH # Duplicated enumeration value #
4 HSCBE HIGH # Function has…() should use “!=” #
5 IR HIGH # Infinite recursion #
6 MN HIGH # Missing Nil case in List matching #
7 MOA HIGH # Misuse of Array creation #
8 NC HIGH # Null checker #
9 PMT LOW # False return type of Pattern matching #
10 RI HIGH # Reuse an iterator #
11 ULV MID # Unused local variable #
12 UPA LOW # Unused pattern matching alias #

Requirements

Project

How to use scapegoat?

课堂演示名单1214

Severity

HIGH -- This pattern will cause some unexpected behaviors, causing exceptions and crashes or it shows programmer’s confusion about the code.

MEDIUM -- This pattern might cause unexpected behavior,or it shows some bad coding style.

LOW -- This pattern mainly exhibits a bad coding style. Although it sometimes causes error, we recommend that it should be fixed.

Testbed

There are some scala projects, and you can find bugs with scapegoat and your detectors.


File:New-testbed.zip

Related Project

Scapegoat

Scapegoat – An Open-Source SBT Plugin

Scapegoat is a Scala static code analyzer, what is more colloquially known as a code lint tool or linter. Scapegoat works in a similar vein to Java's FindBugs or checkstyle, or Scala's Scalastyle.

How to use scapegoat?

sbt-scapegoat

FindBugs

FindBugs™ - Find Bugs in Java Programs

The FindBugs uses static analysis to look for bugs in Java code.


符易阳 fuyiyang@sjtu.edu.cn

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox