[fpc-devel] Some thoughts on multi-line string support, and a possible syntax that I think is perfectly clean and Pascal-ish.
Ryan Joseph
genericptr at gmail.com
Sat Jul 6 01:49:25 CEST 2019
> On Jul 5, 2019, at 7:33 PM, Ben Grasset <operator97 at gmail.com> wrote:
>
> {$H+} is definitely not needed for an explicit 'var string: ansistring'. It works even with {$H-}.
Do you mean this? I still get an error without H+.
{$mode objfpc}
program test;
var lines: ansistring = `
#version 150
uniform sampler2D textures[8];
in vec2 vertexTexCoord;
in vec4 vertexColor;
in float vertexUVMap;
out vec4 fragColor;
void main()
{
if (vertexUVMap == 255) {
fragColor = vertexColor;
} else {
fragColor = texture(textures[int(vertexUVMap)], vertexTexCoord.st);
if (vertexColor.a < fragColor.a) {
fragColor.a = vertexColor.a;
}
}
}`;
>
> After looking at Ryan's more complete example though, the use of {$mode SomeLanguageMode} *before* pushing {$H+} does seem to make {$H+} not recognized. I do not believe that this behaviour is related to any code I've added so far, however, as I don't see how it possibly could be. Seems like a bug that nobody came across before.
Then it’s a bug I guess? That would be nice to fix because it will be a problem for exiting code if we’re forced to turn on H+ for the entire unit. It’s probably not related to your code I agree. If anyone know if this is a bug/can be fixed please let me know.
Regards,
Ryan Joseph
More information about the fpc-devel
mailing list