Lucas Kramer

Results 76 issues of Lucas Kramer

Since in ableC we resolve operator shift/reduce conflicts via a hierarchical expression grammar, assigning precedence/associativity to operator terminals shouldn't be required. Some terminals have precedence/associativity regardless, this should be removed.

This is primarily for https://github.com/melt-umn/ableC-closure/issues/3, but could be useful for extensions in general. In some places in C++ (e.g. lambdas) type expressions that aren't a struct/enum/union declaration are permitted to...

Currently `mergeQualifiers` has type `(a ::= a)`. Instead should have type `a`, and there should be a corresponding inherited attribute `mergeQualifiersWith::a` (or whatever you want to call it) that is...

For example, all the `__sync_fetch_and_...` functions, which are provided by GCC, are indicated as 'ignored' by comments in GeneratedBuiltins.sv. The builtins generator is the one part of ableC that I...

For example, I'm not sure why most of the tests failed for this build: http://coldpress.cs.umn.edu:8080/job/melt-umn/job/ableC/job/fix%252FcppTags/2/ I haven't been able to reproduce it at all reliably, but this seems to happen...

For example ``` inline int foo(int); ``` translates into ``` signed int foo(signed int ); ``` discarding the `inline` special specifier. As far as I can tell the abstract syntax...

bug

See title. Simple bug but I don't feel like fixing this right now.

bug

We have both a top-level `edu:umn:cs:melt:ableC:host` grammar with the default composition, and also `edu:umn:cs:melt:ableC:hosts:default` which seems to be the same thing? One of these should be removed, probably.

Currently we only propagate label defs across statements. However, labels may occur inside statements inside expressions inside statements, and should be visible at the top level of statements. Note that...

bug

Low priority, but apparently GCC supports this as an extension: https://gcc.gnu.org/onlinedocs/gcc/Incomplete-Enums.html#Incomplete-Enums Shouldn't be too hard to do if we decide to implement this at some point - we would just...