summaryrefslogtreecommitdiffstats
path: root/tests/diagnostics/pragma-warning-single-file.slang
blob: df1e2b77ed3fa2d03e954be2d2c0406282413a6f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
//TEST:SIMPLE(filecheck=CHECK):

module test_pragma_warning_single;

namespace test1
{
    interface IConvertibleFrom<From> {}

    // This SHOULD produce warning 30856 because it's not disabled
    extension<From : __BuiltinIntegerType, To : IConvertibleFrom<From>, let N : int>
    vector<To, N> : IConvertibleFrom<vector<From, N>> {}
}

#pragma warning(disable: 30856)

namespace test2
{
    interface IConvertibleFrom<From> {}

    // This should NOT produce warning 30856 due to pragma disable
    extension<From : __BuiltinFloatingPointType, To : IConvertibleFrom<From>, let N : int>
    vector<To, N> : IConvertibleFrom<vector<From, N>> {}
}

// CHECK: warning 30856
// CHECK-NOT: 30856