Compare commits
No commits in common. "cpplint/simple" and "master" have entirely different histories.
cpplint/si
...
master
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -1 +0,0 @@
|
|||
joj3_result.json
|
|
@ -1,3 +1,3 @@
|
|||
# cpplint sillycode
|
||||
# JOJ3 examples
|
||||
|
||||
From <https://github.com/cpplint/cpplint/blob/develop/samples/silly-sample/src/sillycode.cpp>.
|
||||
Check other branches.
|
||||
|
|
61
conf.json
61
conf.json
|
@ -1,61 +0,0 @@
|
|||
{
|
||||
"stage": {
|
||||
"stages": [
|
||||
{
|
||||
"name": "cpplint",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"cpplint",
|
||||
"--recursive",
|
||||
"."
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"cpuLimit": 10000000000,
|
||||
"memoryLimit": 104857600,
|
||||
"procLimit": 50,
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"stdin": {
|
||||
"content": ""
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 65536
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 65536
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "cpplint",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "check done",
|
||||
"matches": [
|
||||
{
|
||||
"keywords": [
|
||||
"whitespace",
|
||||
"legal"
|
||||
],
|
||||
"score": 5
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
|
@ -1 +0,0 @@
|
|||
[{"name":"cpplint","results":[{"score":-75,"comment":"### Test results summary\n\n1. `whitespace`: 14 occurrence(s), -70 point(s)\n2. `legal`: 1 occurrence(s), -5 point(s)\n"}],"force_quit":false}]
|
144
src/simple.cpp
144
src/simple.cpp
|
@ -1,144 +0,0 @@
|
|||
#include <climits>
|
||||
#include <cstdio>
|
||||
#include <iostream>
|
||||
#include <string>
|
||||
|
||||
// Uninitialized member warning
|
||||
class BadClass {
|
||||
int uninitMember;
|
||||
|
||||
public:
|
||||
BadClass() {} // Missing member initialization
|
||||
void print() { std::cout << uninitMember << std::endl; }
|
||||
};
|
||||
|
||||
// Memory leak and resource management warnings
|
||||
void memoryLeaks() {
|
||||
int *ptr = new int(42);
|
||||
// Missing delete - memory leak
|
||||
|
||||
int *array = new int[100];
|
||||
delete ptr; // Wrong deletion type for array
|
||||
|
||||
// Double deletion
|
||||
int *doubleDel = new int(5);
|
||||
delete doubleDel;
|
||||
delete doubleDel;
|
||||
}
|
||||
|
||||
// Null pointer dereferencing
|
||||
void nullPointerDereference(int *ptr) {
|
||||
if (ptr == nullptr) {
|
||||
*ptr = 42; // Dereferencing null pointer
|
||||
}
|
||||
}
|
||||
|
||||
// Array bounds warnings
|
||||
void arrayBoundsIssues() {
|
||||
int arr[5];
|
||||
for (int i = 0; i <= 5; i++) { // Off-by-one error
|
||||
arr[i] = i;
|
||||
}
|
||||
|
||||
// Using uninitialized array
|
||||
int uninitArr[10];
|
||||
int sum = 0;
|
||||
for (int i = 0; i < 10; i++) {
|
||||
sum += uninitArr[i];
|
||||
}
|
||||
}
|
||||
|
||||
// Unused variables and dead code
|
||||
void unusedVariables() {
|
||||
int unused = 42;
|
||||
std::string neverUsed = "hello";
|
||||
|
||||
if (true) {
|
||||
int unreachable = 10;
|
||||
} else {
|
||||
// Dead code
|
||||
std::cout << "This will never execute" << std::endl;
|
||||
}
|
||||
}
|
||||
|
||||
// Integer overflow
|
||||
void integerOverflow() {
|
||||
int max = INT_MAX;
|
||||
max += 1; // Overflow
|
||||
|
||||
unsigned int i = 0;
|
||||
for (i = 10; i >= 0; i--) { // Infinite loop due to unsigned underflow
|
||||
std::cout << i << std::endl;
|
||||
}
|
||||
}
|
||||
|
||||
// Resource leak in exception
|
||||
void resourceLeak() {
|
||||
FILE *file = fopen("nonexistent.txt", "r");
|
||||
// Missing fclose and no exception handling
|
||||
char buffer[100];
|
||||
fgets(buffer, 100, file);
|
||||
}
|
||||
|
||||
// Uninitialized variable usage
|
||||
void uninitializedVariables() {
|
||||
int x;
|
||||
if (x > 0) { // Using x without initialization
|
||||
std::cout << "x is positive" << std::endl;
|
||||
}
|
||||
|
||||
bool flag;
|
||||
while (flag) { // Using uninitialized flag
|
||||
std::cout << "Loop" << std::endl;
|
||||
}
|
||||
}
|
||||
|
||||
// Division by zero
|
||||
void divisionByZero(int divisor) {
|
||||
int result = 100 / divisor; // No check for zero
|
||||
}
|
||||
|
||||
class Base {
|
||||
public:
|
||||
void normalFunction() {}
|
||||
virtual void virtualFunction() {}
|
||||
};
|
||||
|
||||
class Derived : public Base {
|
||||
public:
|
||||
void normalFunction() {} // Hiding base class function
|
||||
void virtualFunction() {} // Missing override keyword
|
||||
};
|
||||
|
||||
int main() {
|
||||
// Memory management issues
|
||||
memoryLeaks();
|
||||
|
||||
// Null pointer issues
|
||||
int *nullPtr = nullptr;
|
||||
nullPointerDereference(nullPtr);
|
||||
|
||||
// Array issues
|
||||
arrayBoundsIssues();
|
||||
|
||||
// Dead code and unused variables
|
||||
unusedVariables();
|
||||
|
||||
// Integer issues
|
||||
integerOverflow();
|
||||
|
||||
// Resource management
|
||||
resourceLeak();
|
||||
|
||||
// Uninitialized variables
|
||||
uninitializedVariables();
|
||||
|
||||
// Division by zero
|
||||
divisionByZero(0);
|
||||
|
||||
// Object slicing
|
||||
Derived derived;
|
||||
Base base = derived; // Object slicing
|
||||
|
||||
return 0;
|
||||
}
|
Loading…
Reference in New Issue
Block a user