Comments (3)
Note that visiblity is related to module boundary, and not file boundary.
#include is just string pasting, so the compiler will always see duplicate definitions.
Users are avdvised to avoid #include whenever possible, and use import
instead.
from slang.
And also, modules should always begin with a module name;
declaration.
Without it, Slang treats the module as it is written in "legacy language".
In "legacy language", everything is public
.
If you used any visiblity modifiers in the module, that also makes slang treat it as non-legacy.
from slang.
I thought, since #include
in the module just pastes the code, the visibility should be the default module visibility (inside the module) in this example. Also thought that .slang
on its own means it is a slang module. Your explanation makes total sense to me though.
I need the #include for preprocessor defines (not aware of a way to do this with modules) and stumbled upon this since, even though I had a #pragma once in the beginning of the header I got this collision with some typealiases.
from slang.
Related Issues (20)
- WGSL compilation: no conformances for interface
- CI: add support for WGSL compile test
- WGSL: Get vertex+fragment shader integration to work
- WGSL: Create a simple native WebGPU demo using Slang shaders
- WGSL: Add WebGPU support to GFX, so that it can run in CI
- WGSL: Aim for getting all GFX tests to pass
- WGSL: Create a more compelling native/web application that uses emscripten and Slang
- WGSL: Write a blog post and publish the demo code
- WGSL: Extend capability system to detect unsupported numerical types
- `ReportHit` not supported in intersection shader for CUDA target HOT 1
- Partial generic argument inference doesn't work with variadic generics.
- `NullDifferential_t` appears in output code.
- Vulkan CTS passing rate is not 100% HOT 2
- Slang need to print an error for an invalid system-value semantic name
- Dynamic Resources? HOT 1
- Invalid Slang Code-Generation HOT 2
- slang-torch: `v1.2.4` crashes on all examples due to missing headers
- NSight graphics unable to correlate Slang with SPIRV/SASS
- Avoid anti-virus scan on the self-hosted runners for the sake of better performance
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from slang.