summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorjsmall-nvidia <jsmall@nvidia.com>2019-08-15 18:38:59 -0400
committerTim Foley <tfoleyNV@users.noreply.github.com>2019-08-15 15:38:59 -0700
commit77fe3dd74446fb07dd0de31114f7033f111ef868 (patch)
tree835044f955d4f2afc02894448864321fca3344df /tests
parent44506607215247be4bf33c1a629bf39971bc966f (diff)
A more convoluted #pragma once file identity test, using relative paths. (#1021)
* A more convoluted #pragma once file identity test, using relative paths. * Fix bug with passing - to slang as a command line option causes a crash. Ability to set file-system to use on command line. #pragma once tests try with 'normal' and 'read-file' only versions * OSFileSystem -> OSFileSystemExt LoadFileOSFileSystem -> OSFileSystem Implemented OSFileSystem like OSFileSystemExt as as singleton. Fixes to comments.
Diffstat (limited to 'tests')
-rw-r--r--tests/preprocessor/file-identity/b.h11
-rw-r--r--tests/preprocessor/file-identity/c.h11
-rw-r--r--tests/preprocessor/file-identity/sub-folder/file-identity.slang13
-rw-r--r--tests/preprocessor/pragma-once.slang1
4 files changed, 36 insertions, 0 deletions
diff --git a/tests/preprocessor/file-identity/b.h b/tests/preprocessor/file-identity/b.h
new file mode 100644
index 000000000..ba131c653
--- /dev/null
+++ b/tests/preprocessor/file-identity/b.h
@@ -0,0 +1,11 @@
+#pragma once
+
+#include "c.h"
+
+#ifdef B_H
+# error "Shouldn't be included twice"
+#endif
+
+#define B_H
+
+float foo(float x) { return x; } \ No newline at end of file
diff --git a/tests/preprocessor/file-identity/c.h b/tests/preprocessor/file-identity/c.h
new file mode 100644
index 000000000..eb6cd1c42
--- /dev/null
+++ b/tests/preprocessor/file-identity/c.h
@@ -0,0 +1,11 @@
+#pragma once
+
+#include "b.h"
+
+#ifdef C_H
+# error "c.h shouldn't be included twice"
+#endif
+
+#define C_H
+
+float bar(float x) { return x; } \ No newline at end of file
diff --git a/tests/preprocessor/file-identity/sub-folder/file-identity.slang b/tests/preprocessor/file-identity/sub-folder/file-identity.slang
new file mode 100644
index 000000000..590b32a70
--- /dev/null
+++ b/tests/preprocessor/file-identity/sub-folder/file-identity.slang
@@ -0,0 +1,13 @@
+//TEST(smoke):SIMPLE:
+//TEST(smoke):SIMPLE: -file-system load-file
+
+
+#include "../b.h"
+#include "../c.h"
+
+#include "./../b.h"
+
+float test(float x)
+{
+ return foo(x) + bar(x);
+} \ No newline at end of file
diff --git a/tests/preprocessor/pragma-once.slang b/tests/preprocessor/pragma-once.slang
index 43ddee680..ef43ea265 100644
--- a/tests/preprocessor/pragma-once.slang
+++ b/tests/preprocessor/pragma-once.slang
@@ -1,4 +1,5 @@
//TEST(smoke):SIMPLE:
+//TEST(smoke):SIMPLE: -file-system load-file
// Test support for `#pragma once`