Menu

#2 Fails to compile with g++ 4.4

open
nobody
None
5
2010-02-11
2010-02-11
Joshua
No

So it seems that that g++ 4.4 got stricter than g++ 4.3 on the char * / const char * thing.

This is the patch that I used to fix it (a cut from the patch from my attempt at Debianization):
--- simpl-2.1.1b2.orig/common.h
+++ simpl-2.1.1b2/common.h
@@ -818,11 +818,11 @@

/* TODO: Evil casting... */
char* find(char c) const
- { return strchr(mArray.begin(), c); }
+ { return const_cast<char*>(strchr(mArray.begin(), c)); }
char* findr(char c) const
- { return strrchr(mArray.begin(), c); }
+ { return const_cast<char*>(strrchr(mArray.begin(), c)); }
char* find(const char* s) const
- { return strstr(mArray.begin(), s); }
+ { return const_cast<char*>(strstr(mArray.begin(), s)); }

String padLeft(char padChar, size_t len) const;
String padCenter(char padChar, size_t len) const;

Discussion


Log in to post a comment.