summaryrefslogtreecommitdiff
path: root/Tests/CompileFeatures/cxx_contextual_conversions.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Tests/CompileFeatures/cxx_contextual_conversions.cpp')
-rw-r--r--Tests/CompileFeatures/cxx_contextual_conversions.cpp37
1 files changed, 23 insertions, 14 deletions
diff --git a/Tests/CompileFeatures/cxx_contextual_conversions.cpp b/Tests/CompileFeatures/cxx_contextual_conversions.cpp
index 34386246d7..cbc730417f 100644
--- a/Tests/CompileFeatures/cxx_contextual_conversions.cpp
+++ b/Tests/CompileFeatures/cxx_contextual_conversions.cpp
@@ -1,33 +1,42 @@
-#define assert(E) if(!(E)) return 1;
+#define assert(E) \
+ if (!(E)) \
+ return 1;
-template<class T>
+template <class T>
class zero_init
{
public:
- zero_init( )
- : val( static_cast<T>(0) ) { }
- zero_init( T val ) : val( val )
- { }
- operator T & ( ) { return val; }
- operator T ( ) const { return val; }
+ zero_init()
+ : val(static_cast<T>(0))
+ {
+ }
+ zero_init(T val)
+ : val(val)
+ {
+ }
+ operator T&() { return val; }
+ operator T() const { return val; }
private:
T val;
};
int someFunc()
{
- zero_init<int*> p; assert( p == 0 );
+ zero_init<int*> p;
+ assert(p == 0);
p = new int(7);
- assert( *p == 7 );
+ assert(*p == 7);
delete p;
- zero_init<int> i; assert( i == 0 );
+ zero_init<int> i;
+ assert(i == 0);
i = 7;
- assert( i == 7 );
- switch( i ) { }
+ assert(i == 7);
+ switch (i) {
+ }
- int *vp = new int[i];
+ int* vp = new int[i];
return 0;
}