| author | |
| committer | |
| log | 2f43749c2b48b1ef3e59663f3e7033500a4b0c0c |
| tree | 818b6bcb8919601d0ee4f37f04df4dbbbaf69fb6 |
| parent | 8f28c5875911c663541dd4fd1a48fecfe412e8bf |
2 files changed, 60 insertions(+), 60 deletions(-)
test/cases.zig-60| ... | @@ -1819,64 +1819,4 @@ pub fn addCases(ctx: *TestContext) !void { | ... | @@ -1819,64 +1819,4 @@ pub fn addCases(ctx: *TestContext) !void { |
| 1819 | ":2:28: error: cannot set address space of local variable 'foo'", | 1819 | ":2:28: error: cannot set address space of local variable 'foo'", |
| 1820 | }); | 1820 | }); |
| 1821 | } | 1821 | } |
| 1822 | |||
| 1823 | { | ||
| 1824 | var case = ctx.exe("address space pointer coercions", linux_x64); | ||
| 1825 | case.addError( | ||
| 1826 | \\fn entry(a: *addrspace(.gs) i32) *i32 { | ||
| 1827 | \\ return a; | ||
| 1828 | \\} | ||
| 1829 | \\pub fn main() void { _ = entry; } | ||
| 1830 | , &[_][]const u8{ | ||
| 1831 | ":2:12: error: expected *i32, found *addrspace(.gs) i32", | ||
| 1832 | }); | ||
| 1833 | |||
| 1834 | case.compiles( | ||
| 1835 | \\fn entry(a: *addrspace(.gs) i32) *addrspace(.gs) i32 { | ||
| 1836 | \\ return a; | ||
| 1837 | \\} | ||
| 1838 | \\pub fn main() void { _ = entry; } | ||
| 1839 | ); | ||
| 1840 | |||
| 1841 | case.compiles( | ||
| 1842 | \\fn entry(a: *addrspace(.generic) i32) *i32 { | ||
| 1843 | \\ return a; | ||
| 1844 | \\} | ||
| 1845 | \\pub fn main() void { _ = entry; } | ||
| 1846 | ); | ||
| 1847 | |||
| 1848 | case.addError( | ||
| 1849 | \\fn entry(a: *addrspace(.gs) i32) *addrspace(.fs) i32 { | ||
| 1850 | \\ return a; | ||
| 1851 | \\} | ||
| 1852 | \\pub fn main() void { _ = entry; } | ||
| 1853 | , &[_][]const u8{ | ||
| 1854 | ":2:12: error: expected *addrspace(.fs) i32, found *addrspace(.gs) i32", | ||
| 1855 | }); | ||
| 1856 | |||
| 1857 | case.addError( | ||
| 1858 | \\fn entry(a: ?*addrspace(.gs) i32) *i32 { | ||
| 1859 | \\ return a.?; | ||
| 1860 | \\} | ||
| 1861 | \\pub fn main() void { _ = entry; } | ||
| 1862 | , &[_][]const u8{ | ||
| 1863 | ":2:13: error: expected *i32, found *addrspace(.gs) i32", | ||
| 1864 | }); | ||
| 1865 | |||
| 1866 | case.addError( | ||
| 1867 | \\fn entry(a: *addrspace(.gs) i32) *i32 { | ||
| 1868 | \\ return &a.*; | ||
| 1869 | \\} | ||
| 1870 | \\pub fn main() void { _ = entry; } | ||
| 1871 | , &[_][]const u8{ | ||
| 1872 | ":2:12: error: expected *i32, found *addrspace(.gs) i32", | ||
| 1873 | }); | ||
| 1874 | |||
| 1875 | case.compiles( | ||
| 1876 | \\fn entry(a: *addrspace(.gs) i32) *addrspace(.gs) i32 { | ||
| 1877 | \\ return &a.*; | ||
| 1878 | \\} | ||
| 1879 | \\pub fn main() void { _ = entry; } | ||
| 1880 | ); | ||
| 1881 | } | ||
| 1882 | } | 1822 | } |
test/stage2/llvm.zig+60| ... | @@ -242,4 +242,64 @@ pub fn addCases(ctx: *TestContext) !void { | ... | @@ -242,4 +242,64 @@ pub fn addCases(ctx: *TestContext) !void { |
| 242 | \\} | 242 | \\} |
| 243 | , ""); | 243 | , ""); |
| 244 | } | 244 | } |
| 245 | |||
| 246 | { | ||
| 247 | var case = ctx.exeUsingLlvmBackend("address space pointer coercions", linux_x64); | ||
| 248 | case.addError( | ||
| 249 | \\fn entry(a: *addrspace(.gs) i32) *i32 { | ||
| 250 | \\ return a; | ||
| 251 | \\} | ||
| 252 | \\pub export fn main() void { _ = entry; } | ||
| 253 | , &[_][]const u8{ | ||
| 254 | ":2:12: error: expected *i32, found *addrspace(.gs) i32", | ||
| 255 | }); | ||
| 256 | |||
| 257 | case.compiles( | ||
| 258 | \\fn entry(a: *addrspace(.gs) i32) *addrspace(.gs) i32 { | ||
| 259 | \\ return a; | ||
| 260 | \\} | ||
| 261 | \\pub export fn main() void { _ = entry; } | ||
| 262 | ); | ||
| 263 | |||
| 264 | case.compiles( | ||
| 265 | \\fn entry(a: *addrspace(.generic) i32) *i32 { | ||
| 266 | \\ return a; | ||
| 267 | \\} | ||
| 268 | \\pub export fn main() void { _ = entry; } | ||
| 269 | ); | ||
| 270 | |||
| 271 | case.addError( | ||
| 272 | \\fn entry(a: *addrspace(.gs) i32) *addrspace(.fs) i32 { | ||
| 273 | \\ return a; | ||
| 274 | \\} | ||
| 275 | \\pub export fn main() void { _ = entry; } | ||
| 276 | , &[_][]const u8{ | ||
| 277 | ":2:12: error: expected *addrspace(.fs) i32, found *addrspace(.gs) i32", | ||
| 278 | }); | ||
| 279 | |||
| 280 | case.addError( | ||
| 281 | \\fn entry(a: ?*addrspace(.gs) i32) *i32 { | ||
| 282 | \\ return a.?; | ||
| 283 | \\} | ||
| 284 | \\pub export fn main() void { _ = entry; } | ||
| 285 | , &[_][]const u8{ | ||
| 286 | ":2:13: error: expected *i32, found *addrspace(.gs) i32", | ||
| 287 | }); | ||
| 288 | |||
| 289 | case.addError( | ||
| 290 | \\fn entry(a: *addrspace(.gs) i32) *i32 { | ||
| 291 | \\ return &a.*; | ||
| 292 | \\} | ||
| 293 | \\pub export fn main() void { _ = entry; } | ||
| 294 | , &[_][]const u8{ | ||
| 295 | ":2:12: error: expected *i32, found *addrspace(.gs) i32", | ||
| 296 | }); | ||
| 297 | |||
| 298 | case.compiles( | ||
| 299 | \\fn entry(a: *addrspace(.gs) i32) *addrspace(.gs) i32 { | ||
| 300 | \\ return &a.*; | ||
| 301 | \\} | ||
| 302 | \\pub export fn main() void { _ = entry; } | ||
| 303 | ); | ||
| 304 | } | ||
| 245 | } | 305 | } |