| /* { dg-do compile } */ |
| |
| class CString |
| { |
| public: |
| CString(); |
| ~CString() { operator delete(_rep); } |
| operator const char*() const { return _rep; } |
| private: |
| CString(char* cstr); |
| char* _rep; |
| }; |
| |
| class String |
| { |
| public: |
| |
| String(); |
| String(const char* str); |
| ~String(); |
| CString getCString() const; |
| }; |
| |
| int is_absolute_path(const char *path); |
| |
| inline void getAbsolutePath( |
| const char* path, |
| const String& filename) |
| { |
| (!is_absolute_path(filename.getCString()) && path); |
| return; |
| } |
| |
| int foo(int &value); |
| |
| int main(int argc, char** argv) |
| { |
| int repeatTestCount = 0; |
| if (foo(repeatTestCount)) |
| { |
| repeatTestCount = 1; |
| } |
| for (int numTests = 1; numTests <= repeatTestCount; numTests++) |
| { |
| getAbsolutePath("blah", "blah"); |
| } |
| return 0; |
| } |