Index: tools/clang/blink_gc_plugin/tests/stack_allocated.txt |
diff --git a/tools/clang/blink_gc_plugin/tests/stack_allocated.txt b/tools/clang/blink_gc_plugin/tests/stack_allocated.txt |
new file mode 100644 |
index 0000000000000000000000000000000000000000..7fecd12f015a399531dc782edab08407e68d1c54 |
--- /dev/null |
+++ b/tools/clang/blink_gc_plugin/tests/stack_allocated.txt |
@@ -0,0 +1,23 @@ |
+In file included from stack_allocated.cpp:5: |
+./stack_allocated.h:14:1: warning: [blink-gc] Class 'PartObject' requires a trace method. |
+class PartObject { |
+^ |
+./stack_allocated.h:17:5: note: [blink-gc] Untraced field 'm_obj' declared here: |
+ Member<HeapObject> m_obj; // Needs tracing. |
+ ^ |
+./stack_allocated.h:26:28: warning: [blink-gc] Stack-allocated class 'AnotherStackObject' derives class 'PartObject' which is not stack allocated. |
+class AnotherStackObject : public PartObject { // Invalid base. |
+ ^ |
+./stack_allocated.h:32:1: warning: [blink-gc] Class 'HeapObject' contains invalid fields. |
+class HeapObject : public GarbageCollected<HeapObject> { |
+^ |
+./stack_allocated.h:36:5: note: [blink-gc] Stack-allocated field 'm_part' declared here: |
+ StackObject m_part; // Cannot embed a stack allocated object. |
+ ^ |
+stack_allocated.cpp:12:1: warning: [blink-gc] Class 'AnonStackObject' contains invalid fields. |
+class AnonStackObject : public StackObject { |
+^ |
+stack_allocated.cpp:14:5: note: [blink-gc] Raw pointer field 'm_obj' to a GC managed class declared here: |
+ HeapObject* m_obj; |
+ ^ |
+4 warnings generated. |