49 lines
818 B
C
49 lines
818 B
C
/* { 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;
|
|
}
|