diff --git a/Check.jai b/Check.jai index 9f62d2d..aff2f0d 100644 --- a/Check.jai +++ b/Check.jai @@ -6,6 +6,8 @@ //~ nbr: Error reporting TODOs // // [ ] Add and error for using keywords as names, or rename the dx11 keywords in the resulting hlsl shader. +// [ ] Add missing scope in for loop for loop iterator +// [ ] Maybe we remove the resource index on type variables, seems like we don't need it there. // [x] Improve error reporting on mismatched overloads when types don't match, but arity does. // [x] Improve error reporting for type mismatches in general. It seems like the expect node is not always correct. @@ -83,6 +85,10 @@ Type_Variable :: struct { MAX_TYPE_VARIABLE_CHILDREN :: 32; children : Static_Array(Type_Variable_Handle, MAX_TYPE_VARIABLE_CHILDREN); + //@Incomplete: Should we remove this and do it in the output generation instead? + // Seems kind of superfluous considering we auto-generate it. + // Otherwise if we want to specify it, it should be specified as a hint @binding(index) + // In the case of using hints, we can just have it on the AST node. //@Note(niels): For constant buffers resource_index : u32; @@ -1639,6 +1645,7 @@ check_node :: (checker : *Checker, node : *AST_Node) -> Type_Variable_Handle { } case .For; { loop_iterator := node.token; + // @Incomplete: Missing scope here? scope, scope_handle := push_scope(checker, kind = .Block); diff --git a/module.jai b/module.jai index db89a1f..a4b4ec2 100644 --- a/module.jai +++ b/module.jai @@ -23,6 +23,11 @@ - [ ] for-each loops - [ ] add parameters to hints (meta properties, resource binding indices if needed) - [ ] consider @entry(stage) syntax instead of the forced keyword +- [ ] Add flags to compiler + - [ ] Generate output flag(s) + - [ ] Possibly final stage flag, so you can just call compile_file and it only does what you need. + - Probably this flag is about which stage you need as the _last_ and not which stages to do, as that doesn't make sense. + - [ ] Multiple output languages? */ add_define :: (env : *Environment, key : string) {