Comments (3)
I was never a fan of the complex control structures involved with break and continue. They pose problems for static analysis because it isn't easy (or rather is impossible) to linearize, you need extensive simulation with constant propagation of loop structures (which might not be possible is the variables are not constant). Opposed to goto which is just single statement that doesn't involve structural semantics. I would generally advise against them in actual code, since they are actually a rather contributing factor to broken code. I think if you implement them, to consider giving them stricter semantics, i.e nested break/continue simply spitting a warning (unless it's an explicit multiscope statement like break this; where this can be a scoped-label). I would like to think of a better solution for all of this though, something that can be statically analyzed. If that is possible? Perhaps I'm just being picky.
from gmqcc.
Regular non-labeled variants are in now.
from gmqcc.
testcases added and succeeding
from gmqcc.
Related Issues (20)
- internal error when a qc function is called with an empty parameter HOT 2
- How should I compile this? HOT 1
- Segfault when variable and typedef share name
- Wrong column numbers
- Broken XOR assign HOT 1
- enum : flag uses incorrect incrementation with =
- frame macro syntax broken with C-style functions HOT 1
- operator != and == does not work with comparisons against nil HOT 1
- invalid types for variable argument function assignment
- Broken char literals get accepted
- Inconsistent math with multiple assignments to the same variable HOT 2
- for loop bug HOT 7
- if(cond) + break; issue with -O3 HOT 1
- if bug HOT 1
- multiple constants with same value HOT 1
- A way to run GMQCC as a linter HOT 5
- Repository and fork
- failed to open `progs.src` for reading when in subdirectory
- Deduplicate emitted opcodes variants
- CRC mismatch when using C-Style Function Declaration on System Entity Fields
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 gmqcc.