[llvm-commits] CVS: llvm-test/MultiSource/Benchmarks/Prolangs-C++/family/family.cpp

Chris Lattner lattner at cs.uiuc.edu
Thu Jan 5 16:59:58 PST 2006



Changes in directory llvm-test/MultiSource/Benchmarks/Prolangs-C++/family:

family.cpp updated: 1.2 -> 1.3
---
Log message:

fix some undefined behavior in this testcase, though it is not causing a problem


---
Diffs of the changes:  (+12 -12)

 family.cpp |   24 ++++++++++++------------
 1 files changed, 12 insertions(+), 12 deletions(-)


Index: llvm-test/MultiSource/Benchmarks/Prolangs-C++/family/family.cpp
diff -u llvm-test/MultiSource/Benchmarks/Prolangs-C++/family/family.cpp:1.2 llvm-test/MultiSource/Benchmarks/Prolangs-C++/family/family.cpp:1.3
--- llvm-test/MultiSource/Benchmarks/Prolangs-C++/family/family.cpp:1.2	Mon Oct  4 19:59:55 2004
+++ llvm-test/MultiSource/Benchmarks/Prolangs-C++/family/family.cpp	Thu Jan  5 18:59:46 2006
@@ -9,24 +9,24 @@
   char *lastName;
 public:
   Parent(void) {
-    lastName = new char; // was char[5];
+    lastName = new char[100]; // was char[5];
     strcpy(lastName, "None");
   }
 
   Parent (char *aLastName) {
-    strlen(aLastName), lastName = new char; // was char[strlen(aLastName) + 1]
+    strlen(aLastName), lastName = new char[100]; // was char[strlen(aLastName) + 1]
     strcpy(lastName,aLastName);
   }
 
   Parent (Parent& aParent) {
-    strlen(aParent.lastName), lastName = new char;
+    strlen(aParent.lastName), lastName = new char[100];
     strcpy(lastName,aParent.lastName);
   }
 
   char *getLastName(void) { return lastName;}
 
   void setLastName(char *aName) {
-    strlen(aName), lastName = new char;
+    strlen(aName), lastName = new char[100];
     strcpy(lastName,aName);
   }
 
@@ -35,7 +35,7 @@
   }
 
   ~Parent(void) {
-    delete lastName;
+    delete [] lastName;
   }
 };
 
@@ -44,18 +44,18 @@
   char *firstName;
 public:
   Child(void) {
-    firstName = new char;
+    firstName = new char[100];
     strcpy(firstName,"None");
   }
 
   Child (char *aLastName, char *aFirstName) : Parent (aLastName) {
-    strlen(aFirstName), firstName = new char;
+    strlen(aFirstName), firstName = new char[100];
     strcpy(firstName,aFirstName);
   }
 
   Child(Child& aChild) {
     setLastName(aChild.getLastName());
-    strlen(aChild.firstName), firstName = new char;
+    strlen(aChild.firstName), firstName = new char[100];
     strcpy(firstName,aChild.firstName);
   }
 
@@ -64,12 +64,12 @@
   }
 
   void setFirstName(char *aName) {
-    strlen(aName), firstName = new char;
+    strlen(aName), firstName = new char[100];
     strcpy(firstName,aName);
   }
 
   ~Child(void) {
-    delete firstName;
+    delete [] firstName;
   }
 
   virtual void answerName(void) {
@@ -84,11 +84,11 @@
 public:
   GrandChild(char *aLastName,char *aFirstName,char *aGrandFatherName):Child(aLastName,
 									    aFirstName) {
-    strlen(aGrandFatherName), grandFatherName = new char;
+    strlen(aGrandFatherName), grandFatherName = new char[100];
     strcpy(grandFatherName, aGrandFatherName);
   }
 
-  ~GrandChild(void) { delete grandFatherName;}
+  ~GrandChild(void) { delete [] grandFatherName;}
 
   virtual void answerName(void) {
     Child::answerName();






More information about the llvm-commits mailing list