Comments (8)
If you become Mad Pascal Contributor then you'll see all reported cases :]
from mad-pascal.
You mean inline code defined as procedure? Macros in Pascal are #41
from mad-pascal.
Yes, that's exactly what I mean. :)
EDIT:
I'm more concerned with something like:
var
screen:array[0..0] of byte absolute SCREEN_ADDR;
screenOffset:byte;
procedure putToScreen(var ofs:byte; value:byte); MACRO;
begin
screen[ofs]:=value; ofs:=ofs+1;
end;
begin
screenOffset:=0;
putToScreen(screenOffset,0);
putToScreen(screenOffset,1);
putToScreen(screenOffset,2);
putToScreen(screenOffset,3);
putToScreen(screenOffset,4);
end;
Where an equivalent would be created as a result:
var
screen:array[0..0] of byte absolute SCREEN_ADDR;
screenOffset:byte;
begin
screenOffset:=0;
screen[screenOffset]:=0; screenOffset:=screenOffset+1; (* macro call putToScreen(screenOffset,0); *)
screen[screenOffset]:=1; screenOffset:=screenOffset+1; (* macro call putToScreen(screenOffset,1); *)
screen[screenOffset]:=2; screenOffset:=screenOffset+1; (* macro call putToScreen(screenOffset,2); *)
screen[screenOffset]:=3; screenOffset:=screenOffset+1; (* macro call putToScreen(screenOffset,3); *)
screen[screenOffset]:=4; screenOffset:=screenOffset+1; (* macro call putToScreen(screenOffset,4); *)
end;
The procedure call stack is skipped and there is no JMP command in the assembler, and all the macro code would be INLINE, as it were, in the place of its call.
from mad-pascal.
Why don't I have insight into other Issues as just mine?
from mad-pascal.
Moving on, I ask the question:
Why don't I see all the reported cases?
This makes me misinformed and aware of global reported bugs/innovations.
(Sorry to post this in this thread, but this is the one that showed I can't see everything that is going on)
from mad-pascal.
Sorry, but I don't know everything in GitHubs yet - thanks for explaining
from mad-pascal.
uses crt;
procedure test; inline;
begin
writeln(pi);
end;
begin
test; readkey;
end.
from mad-pascal.
Woow. So inline
works like this :) OK, there was no topic :D
from mad-pascal.
Related Issues (20)
- Arithmetic on pointer passed by variable should not affect data HOT 2
- using the `fdiv` variable name when dividing with floating point `float` / `single` causes a hangup HOT 2
- The `inline` modifier in a nested function throws a compilation error in MADS HOT 1
- Unit compilation error HOT 4
- Unable to reuse the MPT player with another music file. HOT 1
- Feature: Direct parameter reference of functions and procedures.
- [feature request] Default parameter
- MP incorrectly generates a reference to a variable placed in the library, which causes a MADS compilation error. HOT 3
- [BUG] Access violation HOT 2
- Use of built-in macros HOT 1
- Writing a value to a two-dimensional Float16 array does not work correctly HOT 5
- Feature Request: `keep` modifier for procedures/functions HOT 4
- Feature Request: `absolute` location for function `RESULT` HOT 1
- Fields of record are passed incorrectly as variable HOT 2
- Index variable is not incremented without dummy call HOT 3
- Address operator works incorrectly on record fields HOT 2
- Unable to pass fields of record as variable for record given by pointer HOT 2
- BUG: benchmark suite is broken now HOT 1
- Unable to copy nested record of record passed as pointer HOT 2
- Unable to cast pointer on the left side of assignment HOT 2
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 mad-pascal.