Nearing 0.6.2 release; Windows version now works.
diff --git a/gptpart.h b/gptpart.h
index dc499b9..d24ed87 100644
--- a/gptpart.h
+++ b/gptpart.h
@@ -62,21 +62,21 @@
       string GetName(void);
 
       // Simple data assignment:
-      void SetType(struct GUIDData t) {partitionType = t;}
-      void SetType(uint16_t hex) {partitionType = typeHelper.IDToGUID(hex);}
+      void SetType(struct GUIDData t);
+      void SetType(uint16_t hex) {SetType(typeHelper.IDToGUID(hex));}
       void SetUniqueGUID(struct GUIDData u) {uniqueGUID = u;}
       void SetUniqueGUID(int zeroOrRandom);
       void SetFirstLBA(uint64_t f) {firstLBA = f;}
       void SetLastLBA(uint64_t l) {lastLBA = l;}
       void SetAttributes(uint64_t a) {attributes = a;}
-      void SetName(string n);
+      void SetName(const string & n);
 
       // Additional functions
       GPTPart & operator=(const GPTPart & orig);
       void ShowSummary(int partNum, uint32_t blockSize); // display summary information (1-line)
       void ShowDetails(uint32_t blockSize); // display detailed information (multi-line)
       void BlankPartition(void); // empty partition of data
-      int DoTheyOverlap(GPTPart* other); // returns 1 if there's overlap
+      int DoTheyOverlap(const GPTPart & other); // returns 1 if there's overlap
       void ReversePartBytes(void); // reverse byte order of all integer fields
 
       // Functions requiring user interaction