Index: tests/linking/mangling/header.hfa
===================================================================
--- tests/linking/mangling/header.hfa	(revision d4c8b59de92f60b3587d37a5c317316e601fb299)
+++ tests/linking/mangling/header.hfa	(revision d4c8b59de92f60b3587d37a5c317316e601fb299)
@@ -0,0 +1,13 @@
+#pragma once
+
+typedef struct /* anonymous */ {
+	int some_int;
+	float a_float;
+} name_but_a_typedefed_t;
+
+extern name_but_a_typedefed_t a_typedefed_global;
+
+extern struct {
+	int some_int;
+	int some_other_int;
+} a_global_with_no_type;
Index: tests/linking/mangling/lib.cfa
===================================================================
--- tests/linking/mangling/lib.cfa	(revision d4c8b59de92f60b3587d37a5c317316e601fb299)
+++ tests/linking/mangling/lib.cfa	(revision d4c8b59de92f60b3587d37a5c317316e601fb299)
@@ -0,0 +1,8 @@
+#include "header.hfa"
+
+name_but_a_typedefed_t a_typedefed_global;
+
+struct {
+	int some_int;
+	int some_other_int;
+} a_global_with_no_type;
Index: tests/linking/mangling/main.cfa
===================================================================
--- tests/linking/mangling/main.cfa	(revision d4c8b59de92f60b3587d37a5c317316e601fb299)
+++ tests/linking/mangling/main.cfa	(revision d4c8b59de92f60b3587d37a5c317316e601fb299)
@@ -0,0 +1,17 @@
+#include <fstream.hfa>
+
+struct { int a; } test; //purposefully before the include
+
+#include "header.hfa"
+
+int main() {
+	a_global_with_no_type.some_int = 6;
+	a_global_with_no_type.some_other_int = 7;
+
+	a_typedefed_global.some_int = 8;
+	a_typedefed_global.a_float = 9.0f;
+
+	sout | "Done!";
+
+	return 0;
+}
