From 6f0cde864466ed8f6ff8f30ecf41f85c14997912 Mon Sep 17 00:00:00 2001 From: Elie Richa Date: Wed, 14 Aug 2024 16:43:43 +0000 Subject: [PATCH 1/2] Update the GPR TextMate grammar --- .../vscode/ada/syntaxes/gpr.tmLanguage.json | 208 ++++++++++++++---- 1 file changed, 160 insertions(+), 48 deletions(-) diff --git a/integration/vscode/ada/syntaxes/gpr.tmLanguage.json b/integration/vscode/ada/syntaxes/gpr.tmLanguage.json index a95db29ac..6bc13d9bb 100644 --- a/integration/vscode/ada/syntaxes/gpr.tmLanguage.json +++ b/integration/vscode/ada/syntaxes/gpr.tmLanguage.json @@ -7,6 +7,30 @@ { "include": "#comment" } ], "repository": { + "simple_name": { + "name": "entity.name.gpr", + "match": "\\w+" + }, + "name": { + "name": "meta.name.gpr", + "patterns": [ + { "include": "#simple_name" }, + { "name": "punctuation.gpr", "match": "\\.+" } + ] + }, + "simple_name_ref": { + "comment": "The same as 'simple_name' but formatted as a variable, often used in places where we reference a name instead of defining it", + "name": "variable.name.gpr", + "match": "\\w+" + }, + "name_ref": { + "comment": "The same as 'name' but formatted as a variable, often used in places where we reference a name instead of defining it", + "name": "meta.name_ref.gpr", + "patterns": [ + { "include": "#simple_name_ref" }, + { "name": "punctuation.gpr", "match": "\\.+" } + ] + }, "empty_declaration": { "begin": "(null)", "end": ";", @@ -15,37 +39,109 @@ } }, "assignment": { + "name": "meta.assignment.gpr", "begin": ":=", "end": "(?=;)", "beginCaptures": { "0": { "name": "punctuation.gpr" } }, - "patterns": [ - { - "name": "keyword.control.directive.gpr", - "match": "(?i)\\bexternal\\b" - }, - { - "name": "punctuation.gpr", - "match": "[(),]" - }, - { "include": "#string" } - ] + "patterns": [{ "include": "#expression" }] }, "attribute": { "name": "meta.attribute.gpr", - "begin": "(?i)\\b(for)\\s+((?:\\w|_)+)(?:\\s*\\((.*)\\))?\\s+(use)\\b", + "begin": "(?i)\\b(for)\\s*((?:\\w|_)+)?(?:\\s*\\((.*)\\))?\\s+", "end": ";", "beginCaptures": { "1": { "name": "keyword.gpr" }, "2": { "name": "entity.other.attribute-name.gpr" }, - "3": { "patterns": [{ "include": "#string" }] }, - "4": { "name": "keyword.gpr" } + "3": { + "patterns": [ + { "include": "#string_literal" }, + { "name": "punctuation.gpr", "match": "[()]" } + ] + } }, "endCaptures": { "0": { "name": "punctuation.gpr" } }, - "patterns": [{ "include": "#string" }] + "patterns": [ + { "name": "keyword.gpr", "match": "(?i)\\buse\\b" }, + { "include": "#expression" } + ] + }, + "string_expression": { + "patterns": [ + { "include": "#attribute_reference" }, + { "include": "#external_value" }, + { "include": "#string_literal" }, + { "include": "#name_ref" }, + { + "name": "punctuation.gpr", + "match": "&" + } + ] + }, + "external_value": { + "name": "meta.external.gpr", + "begin": "(?i)\\b(external)\\b", + "end": "(?<=\\))", + "beginCaptures": { + "1": { "name": "variable.language.gpr" } + }, + "patterns": [{ "include": "#string_list" }] + }, + "attribute_reference": { + "name": "meta.attribute_reference.gpr", + "match": "\\b(\\w+(?:\\.\\w+)?)\\s*(')\\s*(\\w+)\\s*(\\(.*\\))?", + "captures": { + "1": { + "name": "variable.name.gpr", + "patterns": [ + { "name": "variable.language.gpr", "match": "(?i)\\bproject\\b" }, + { "include": "#name_ref" } + ] + }, + "2": { "name": "punctuation.gpr" }, + "3": { + "name": "meta.attribute_reference.attribute_name", + "patterns": [{ "include": "#simple_name_ref" }] + }, + "4": { + "name": "meta.attribute_reference.attribute_index", + "patterns": [ + { "name": "punctuation.gpr", "match": "[()]" }, + { "include": "#string_literal" } + ] + } + } + }, + "string_list": { + "patterns": [ + { + "name": "meta.string_list.gpr", + "begin": "\\(", + "end": "\\)", + "beginCaptures": { + "0": { "name": "punctuation.gpr" } + }, + "endCaptures": { + "0": { "name": "punctuation.gpr" } + }, + "patterns": [ + { "include": "#string_expression" }, + { "name": "punctuation.gpr", "match": "," } + ] + }, + { "include": "#name_ref" }, + { "include": "#attribute_reference" } + ] + }, + "expression": { + "patterns": [ + { "include": "#string_expression" }, + { "include": "#string_list" }, + { "name": "punctuation.gpr", "match": "&" } + ] }, "case_construction": { "name": "meta.case.gpr", @@ -53,7 +149,7 @@ "end": "(?i)\\b(end)\\s+(case)\\s*(;)", "beginCaptures": { "1": { "name": "keyword.control.gpr" }, - "2": { "name": "variable.name.gpr" }, + "2": { "name": "variable.name.gpr", "patterns": [{ "include": "#name_ref" }] }, "3": { "name": "keyword.control.gpr" } }, "endCaptures": { @@ -61,25 +157,31 @@ "2": { "name": "keyword.control.gpr" }, "3": { "name": "punctuation.gpr" } }, + "patterns": [{ "include": "#comment" }, { "include": "#when" }] + }, + "when": { + "name": "meta.case.when.gpr", + "begin": "(?i)\\b(when)\\b\\s+((?!=>).*)(=>)", + "end": "(?i)(?=\\b(?=when|end\\s+case)\\b)", + "beginCaptures": { + "1": { "name": "keyword.control.gpr" }, + "2": { "patterns": [{ "include": "#discrete_choice_list" }] }, + "3": { "name": "keyword.control.gpr" } + }, "patterns": [ - { "include": "#case_construction" }, - { "include": "#case_when" }, { "include": "#comment" }, + { "include": "#case_construction" }, { "include": "#attribute" }, + { "include": "#variable" }, { "include": "#empty_declaration" } ] }, - "case_when": { - "name": "meta.case.when.gpr", - "begin": "(?i)\\bwhen\\b", - "end": "=>", - "beginCaptures": { - "0": { "name": "keyword.control.gpr" } - }, - "endCaptures": { - "0": { "name": "keyword.gpr" } - }, - "patterns": [{ "include": "#string" }] + "discrete_choice_list": { + "patterns": [ + { "include": "#string_literal" }, + { "name": "keyword.control.gpr", "match": "others" }, + { "name": "punctuation.gpr", "match": "\\|" } + ] }, "comment": { "patterns": [ @@ -179,7 +281,10 @@ "beginCaptures": { "1": { "name": "keyword.gpr" }, "2": { "name": "keyword.gpr" }, - "3": { "name": "entity.name.project.gpr" } + "3": { + "name": "entity.name.project.gpr", + "patterns": [{ "include": "#simple_name" }] + } }, "endCaptures": { "1": { "name": "keyword.gpr" }, @@ -199,7 +304,7 @@ { "include": "#comment" }, { "include": "#attribute" }, { "include": "#type" }, - { "include": "#typed_variable" } + { "include": "#variable" } ] }, { @@ -209,11 +314,11 @@ "2": { "name": "keyword.gpr" } }, "end": "(?i)\\b(?=is)\\b", - "patterns": [{ "include": "#string" }] + "patterns": [{ "include": "#string_literal" }] } ] }, - "string": { + "string_literal": { "name": "string.quoted.double.gpr", "match": "(\").*?(\")", "captures": { @@ -227,43 +332,50 @@ }, "type": { "name": "meta.declaration.type.gpr", - "begin": "(?i)\\b(type)\\s+((?:\\w|\\d|_)+)\\b", + "begin": "(?i)\\b(type)\\b\\s*(\\S+)\\b\\s*(is)", "end": ";", "beginCaptures": { "1": { "name": "keyword.gpr" }, - "2": { "name": "entity.name.type.gpr" } + "2": { + "name": "entity.name.type.gpr", + "patterns": [{ "include": "#simple_name" }] + }, + "3": { "name": "keyword.gpr" } }, "endCaptures": { "0": { "name": "punctuation.gpr" } }, "patterns": [ - { "include": "#string" }, + { "include": "#string_literal" }, { "name": "punctuation.gpr", "match": "[(),]" - }, - { - "name": "keyword.gpr", - "match": "(?i)\\bis\\b" } ] }, "type_annotation": { - "name": "entity.name.type.gpr", - "match": "\\b(\\w|\\d|_)+\\b" + "name": "meta.declaration.variable.type.gpr", + "begin": "(:)(?!=)\\s*(\\S+)", + "end": "(?=;|:=)", + "beginCaptures": { + "1": { "name": "punctuation.gpr" }, + "2": { + "name": "entity.name.type.gpr", + "patterns": [{ "include": "#name" }] + } + } }, - "typed_variable": { + "variable": { "name": "meta.declaration.variable.gpr", - "begin": "\\b((?:\\w|\\d|_)+)\\s*(:)", + "begin": "\\b((?:\\w|\\d|_)+)\\s*(?=:)", "end": ";", "beginCaptures": { - "1": { "name": "variable.name.gpr" }, - "2": { "name": "punctuation.gpr" } + "1": { "name": "variable.name.gpr", "patterns": [{ "include": "#simple_name" }] } }, "endCaptures": { "0": { "name": "punctuation.gpr" } }, - "patterns": [{ "include": "#assignment" }, { "include": "#type_annotation" }] + "patterns": [{ "include": "#type_annotation" }, { "include": "#assignment" }] }, "with_clause": { "name": "meta.clause.with.gpr", @@ -277,7 +389,7 @@ "0": { "name": "punctuation.gpr" } }, "patterns": [ - { "include": "#string" }, + { "include": "#string_literal" }, { "match": ",", "name": "punctuation.gpr" From 86e5bfc091c22e802643827c063cc399457ed280 Mon Sep 17 00:00:00 2001 From: Elie Richa Date: Wed, 14 Aug 2024 16:43:27 +0000 Subject: [PATCH 2/2] Refactor the VS Code highlighting testsuite and add GPR tests --- integration/vscode/ada/.vscode-test.mjs | 2 +- .../test/suite/general/highlighting.test.ts | 171 ++-- .../ada/test/workspaces/general/prj.gpr.snap | 174 ++++ .../ada/test/workspaces/general/src/test.gpr | 95 +++ .../test/workspaces/general/src/test.gpr.snap | 776 ++++++++++++++++++ 5 files changed, 1135 insertions(+), 83 deletions(-) create mode 100644 integration/vscode/ada/test/workspaces/general/prj.gpr.snap create mode 100644 integration/vscode/ada/test/workspaces/general/src/test.gpr create mode 100644 integration/vscode/ada/test/workspaces/general/src/test.gpr.snap diff --git a/integration/vscode/ada/.vscode-test.mjs b/integration/vscode/ada/.vscode-test.mjs index 976c77c67..3422f44c8 100644 --- a/integration/vscode/ada/.vscode-test.mjs +++ b/integration/vscode/ada/.vscode-test.mjs @@ -76,7 +76,7 @@ export default defineConfig( // This may prevent running locally on Linux and having the test // windows visible, but we consider this a minor use case for // now. A workaround is to remove this line. - DISPLAY: ':99', + DISPLAY: process.env.DISPLAY ?? ':99', }, launchArgs: [ // It's important to use the --user-data-dir= form. The diff --git a/integration/vscode/ada/test/suite/general/highlighting.test.ts b/integration/vscode/ada/test/suite/general/highlighting.test.ts index 46f17a87d..43dc7acdd 100644 --- a/integration/vscode/ada/test/suite/general/highlighting.test.ts +++ b/integration/vscode/ada/test/suite/general/highlighting.test.ts @@ -1,49 +1,41 @@ import assert from 'assert'; import * as vscode from 'vscode'; import { spawnSync } from 'child_process'; -import { existsSync, opendirSync, renameSync } from 'fs'; -import path, { basename, dirname } from 'path'; +import fs, { existsSync, lstatSync, opendirSync, readdirSync, renameSync } from 'fs'; +import path from 'path'; import { SemanticTokensParams, SemanticTokensRequest, integer } from 'vscode-languageclient'; import { adaExtState } from '../../../src/extension'; import { assertEqualToFileContent, update, activate } from '../utils'; -let adaFilePaths: string[] = []; +const extensionRootPath = path.join(__dirname, '..', '..', '..', '..'); +const testWsPath = path.join(extensionRootPath, 'test', 'workspaces', 'general'); +const adaTestsPath = path.join(testWsPath, 'src', 'highlighting'); suite('Highlighting', function () { this.beforeAll(async function () { await activate(); }); - const highlightingTestRoot = getDocUri('src/highlighting').fsPath; - adaFilePaths = []; - - function walk(dir: string) { - const openDir = opendirSync(dir); - try { - let child; - while ((child = openDir.readSync()) != null) { - const childPath = path.join(dir, child.name); - if (child.isDirectory()) { - walk(childPath); - } else if (child.isFile()) { - if (child.name.match(/\.ad[bs]$/)) { - adaFilePaths.push(childPath); - } - } - } - } finally { - openDir.closeSync(); - } - } - - walk(highlightingTestRoot); - assert.notStrictEqual(adaFilePaths, []); + const adaTestPaths = [ + 'objects/objects.ads', + 'unknown_imports/pkg.ads', + 'hello/hello.adb', + 'nesting/main.adb', + 'invalid_ada/invalid.adb', + 'types/types.ads', + 'subprograms/subprograms.adb', + 'pkgs-and-specs/pkgbodynospec.adb', + 'pkgs-and-specs/pkgbodywithspec.ads', + 'pkgs-and-specs/pkgbodywithspec.adb', + 'lsp-ada_handlers/lsp-ada_handlers.adb', + 'lsp-ada_handlers/lsp.ads', + 'lsp-ada_handlers/lsp-ada_handlers.ads', + ]; + + for (const relPath of adaTestPaths) { + suite(relPath, function () { + const absPath = path.join(adaTestsPath, relPath); - for (const absPath of adaFilePaths) { - const testName = `${basename(dirname(absPath))}/${basename(absPath)}`; - const absFileUri = vscode.Uri.file(absPath); - - suite(testName, function () { this.afterAll(async function () { await vscode.commands.executeCommand('workbench.action.closeActiveEditor'); }); @@ -57,10 +49,22 @@ suite('Highlighting', function () { }); test('semantic', async function () { + const absFileUri = vscode.Uri.file(absPath); await testSemanticHighlighting(absFileUri); }); }); } + + const gprTests = ['prj.gpr', 'src/test.gpr']; + + for (const relPath of gprTests) { + const gprSyntaxPath = path.join(extensionRootPath, 'syntaxes', 'gpr.tmLanguage.json'); + + test(relPath, function () { + const gprPath = path.join(testWsPath, relPath); + testSyntax(gprSyntaxPath, gprPath, 'source.gpr'); + }); + } }); /** @@ -186,8 +190,6 @@ function getDocUri(p: string): vscode.Uri { } } -const extensionRootPath = path.resolve(__dirname, '../../../../'); - /** * A type representing the two TextMate grammars available in the repository. * The values match directory names in the extension source directory. The @@ -234,54 +236,7 @@ function testSyntaxHighlighting(absFilePath: string, syntax: Syntaxes) { ); } - const cmd = [ - // Use npx to avoid sensitivity to PATH env var. On Windows, the - // Node installation provides a 'npx' executable file which is a - // Bash script which doesn't work on Windows. Instead on Windows, - // the 'npx.cmd' file should be used. - process.platform == 'win32' ? 'npx.cmd' : 'npx', - 'vscode-tmgrammar-snap', - // We pass a non-existing language configuration, otherwise the tool - // picks up the package.json file and always loads the grammar in - // use. - '--config', - 'none', - // Show diffs on separate lines because color coding isn't visible - // in the VS Code debug console. - '--expandDiff', - '-g', - syntaxPath, - '-s', - 'source.ada', - absFilePath, - ]; - - if (update()) { - cmd.push('--updateSnapshot'); - } - - const proc = spawnSync(cmd[0], cmd.slice(1), { cwd: workDirPath }); - - if (proc.error) { - // proc.error is set if we fail to spawn the child process - throw proc.error; - } - - if (proc.status === null) { - const msg = - `Null return code for command: ${cmd.join(' ')}\n` + - String(proc.stdout) + - String(proc.stderr); - assert.fail(msg); - } else if (proc.status != 0) { - const msg = - `Return code ${proc.status.toString()} for command: cd ${workDirPath}; ${cmd.join( - ' ' - )}\n` + - String(proc.stdout) + - String(proc.stderr); - assert.fail(msg); - } + testSyntax(syntaxPath, absFilePath, 'source.ada'); } finally { if (existsSync(workSnapPath)) { // Rename .snap --> .snap. @@ -289,3 +244,55 @@ function testSyntaxHighlighting(absFilePath: string, syntax: Syntaxes) { } } } + +function testSyntax(syntaxPath: string, absFilePath: string, languageId: string) { + const workDirPath = path.dirname(syntaxPath); + const cmd = [ + // Use npx to avoid sensitivity to PATH env var. On Windows, the + // Node installation provides a 'npx' executable file which is a + // Bash script which doesn't work on Windows. Instead on Windows, + // the 'npx.cmd' file should be used. + process.platform == 'win32' ? 'npx.cmd' : 'npx', + 'vscode-tmgrammar-snap', + // We pass a non-existing language configuration, otherwise the tool + // picks up the package.json file and always loads the grammar in + // use. + '--config', + 'none', + // Show diffs on separate lines because color coding isn't visible + // in the VS Code debug console. + '--expandDiff', + '-g', + syntaxPath, + '-s', + languageId, + absFilePath, + ]; + + if (update()) { + cmd.push('--updateSnapshot'); + } + + const proc = spawnSync(cmd[0], cmd.slice(1), { cwd: workDirPath }); + + if (proc.error) { + // proc.error is set if we fail to spawn the child process + throw proc.error; + } + + if (proc.status === null) { + const msg = + `Null return code for command: ${cmd.join(' ')}\n` + + String(proc.stdout) + + String(proc.stderr); + assert.fail(msg); + } else if (proc.status != 0) { + const msg = + `Return code ${proc.status.toString()} for command: cd ${workDirPath}; ${cmd.join( + ' ' + )}\n` + + String(proc.stdout) + + String(proc.stderr); + assert.fail(msg); + } +} diff --git a/integration/vscode/ada/test/workspaces/general/prj.gpr.snap b/integration/vscode/ada/test/workspaces/general/prj.gpr.snap new file mode 100644 index 000000000..87caa8b93 --- /dev/null +++ b/integration/vscode/ada/test/workspaces/general/prj.gpr.snap @@ -0,0 +1,174 @@ +>project Prj is +#^^^^^^^ source.gpr meta.project.gpr keyword.gpr +# ^ source.gpr meta.project.gpr +# ^^^ source.gpr meta.project.gpr entity.name.project.gpr entity.name.gpr +# ^ source.gpr meta.project.gpr +# ^^ source.gpr meta.project.gpr keyword.gpr +> +> Tools_Mains := +#^^^^ source.gpr meta.project.gpr +# ^^^^^^^^^^^ source.gpr meta.project.gpr meta.declaration.variable.gpr variable.name.gpr entity.name.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr +# ^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr punctuation.gpr +> ("main1.adb", +#^^^^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.string_list.gpr punctuation.gpr +> "test.adb"); +#^^^^^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr punctuation.gpr +> +> for Source_Dirs use ("src/**"); +#^^^^ source.gpr meta.project.gpr +# ^^^ source.gpr meta.project.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr +# ^^^^^^^^^^^ source.gpr meta.project.gpr meta.attribute.gpr entity.other.attribute-name.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr +# ^^^ source.gpr meta.project.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr punctuation.gpr +> for Object_Dir use "obj"; +#^^^^ source.gpr meta.project.gpr +# ^^^ source.gpr meta.project.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr +# ^^^^^^^^^^ source.gpr meta.project.gpr meta.attribute.gpr entity.other.attribute-name.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr +# ^^^ source.gpr meta.project.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^ source.gpr meta.project.gpr meta.attribute.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr punctuation.gpr +> for Main use Tools_Mains; +#^^^^ source.gpr meta.project.gpr +# ^^^ source.gpr meta.project.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr +# ^^^^ source.gpr meta.project.gpr meta.attribute.gpr entity.other.attribute-name.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr +# ^^^ source.gpr meta.project.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr +# ^^^^^^^^^^^ source.gpr meta.project.gpr meta.attribute.gpr variable.name.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr punctuation.gpr +> +> package Builder is +#^^^^ source.gpr meta.project.gpr +# ^^^^^^^ source.gpr meta.project.gpr meta.package.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr +# ^^^^^^^ source.gpr meta.project.gpr meta.package.gpr entity.name.package.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr keyword.gpr +> for Executable ("main1.adb") use "main1exec"; +#^^^^^^ source.gpr meta.project.gpr meta.package.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr entity.other.attribute-name.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr punctuation.gpr +> end Builder; +#^^^ source.gpr meta.project.gpr meta.package.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr +# ^^^^^^^ source.gpr meta.project.gpr meta.package.gpr entity.name.package.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr punctuation.gpr +> +> package Compiler is +#^^^ source.gpr meta.project.gpr +# ^^^^^^^ source.gpr meta.project.gpr meta.package.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr +# ^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr entity.name.package.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr keyword.gpr +> for Default_Switches ("Ada") use ("-g", "-O0"); +#^^^^^^ source.gpr meta.project.gpr meta.package.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr entity.other.attribute-name.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr punctuation.gpr +> end Compiler; +#^^^ source.gpr meta.project.gpr meta.package.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr +# ^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr entity.name.package.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr punctuation.gpr +> +> package Documentation is +#^^^ source.gpr meta.project.gpr +# ^^^^^^^ source.gpr meta.project.gpr meta.package.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr +# ^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr entity.name.package.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr keyword.gpr +> -- This project contains intentionally invalid code which causes gnatdoc +#^^^^^^ source.gpr meta.project.gpr meta.package.gpr +# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr comment.line.double-dash.gpr +> -- to fail when testing the corresponding vscode task. This gets the +#^^^^^^ source.gpr meta.project.gpr meta.package.gpr +# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr comment.line.double-dash.gpr +> -- project skipped by gnatdoc for the purpose of testing. +#^^^^^^ source.gpr meta.project.gpr meta.package.gpr +# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr comment.line.double-dash.gpr +> for Excluded_Project_Files use ("prj.gpr"); +#^^^^^^ source.gpr meta.project.gpr meta.package.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^^^^^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr entity.other.attribute-name.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr punctuation.gpr +> end Documentation; +#^^^ source.gpr meta.project.gpr meta.package.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr +# ^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr entity.name.package.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr punctuation.gpr +> +>end Prj; +#^^^ source.gpr meta.project.gpr keyword.gpr +# ^ source.gpr meta.project.gpr +# ^^^ source.gpr meta.project.gpr entity.name.project.gpr +# ^ source.gpr meta.project.gpr punctuation.gpr +> \ No newline at end of file diff --git a/integration/vscode/ada/test/workspaces/general/src/test.gpr b/integration/vscode/ada/test/workspaces/general/src/test.gpr new file mode 100644 index 000000000..2eeea1fa4 --- /dev/null +++ b/integration/vscode/ada/test/workspaces/general/src/test.gpr @@ -0,0 +1,95 @@ +-- +-- Copyright (C) 2018-2024, AdaCore +-- +-- SPDX-License-Identifier: Apache-2.0 +-- + +with "gpr2.gpr"; +with "libadalang"; +with "lal_tools.gpr"; +with "lal_refactor.gpr"; +with "ada_libfswatch.gpr"; +with "libgnatdoc.gpr"; +with "spawn.gpr"; + +with "lsp_3_17"; +with "lsp_common"; + +project LSP_Server is + + VERSION := external ("VERSION", "latest"); + + BUILD_DATE := external ("BUILD_DATE", "unknown"); + + type Library_Kind is ("static", "static-pic", "relocatable"); + Library_Type : Library_Kind := external("ALS_LIBRARY_TYPE", + external("LIBRARY_TYPE", "relocatable")); + + type OS_KIND is ("Windows_NT", "unix", "osx"); + OS : OS_KIND := external("OS", "unix"); + + for Source_Dirs use + ("../source/server", + "../source/ada", + "../source/common", + "../source/gpr", + "../source/ada/generated", + "../source/memory"); + + for Object_Dir use "../.obj/server"; + for Main use ("lsp-ada_driver.adb"); + -- Need C++ to use a linker compatible with libfswatch + for Languages use ("Ada", "C++"); + + package Naming is + case LSP_Common.OS_API is + when "Windows_NT" => + for Implementation ("LSP.Stdio_Streams.Initialize") + use "lsp-stdio_streams-init_windows.adb"; + + when others => + for Implementation ("LSP.Stdio_Streams.Initialize") + use "lsp-stdio_streams-init_others.adb"; + + end case; + end Naming; + + package Compiler is + for Default_Switches ("Ada") use + LSP_3_17.Compiler'Default_Switches ("Ada"); + for Switches ("lsp-ada_driver.adb") use + LSP_3_17.Compiler'Default_Switches ("Ada") + & ("-gnateDVERSION=""" & VERSION & """", + "-gnateDBUILD_DATE=""" & BUILD_DATE & """"); + for Switches ("s-memory.adb") use ("-g", "-O2", "-gnatpg"); + for Local_Configuration_Pragmas use "gnat.adc"; + end Compiler; + + package Linker is + case Library_Type is + when "static" | "static-pic" => + case OS is + when "Windows_NT" => + for Switches ("Ada") use + ("-static", "-static-libstdc++", "-static-libgcc", + "-fstack-protector"); + -- Stack protector forces libssp.a linking for libgmp.a + when "osx" | "unix" => + -- On UNIX, we want to link libc dynamically: needed to find + -- a recent version of iconv_open (and a recommended practice) + for Switches ("Ada") use ("-static-libstdc++", "-static-libgcc"); + end case; + when "relocatable" => + null; + end case; + end Linker; + + package Binder is + for Switches ("ada") use ("-E"); + end Binder; + + package Builder is + for Executable ("lsp-ada_driver") use "ada_language_server"; + end Builder; + +end LSP_Server; diff --git a/integration/vscode/ada/test/workspaces/general/src/test.gpr.snap b/integration/vscode/ada/test/workspaces/general/src/test.gpr.snap new file mode 100644 index 000000000..f0368124a --- /dev/null +++ b/integration/vscode/ada/test/workspaces/general/src/test.gpr.snap @@ -0,0 +1,776 @@ +>-- +#^^ source.gpr comment.line.double-dash.gpr +>-- Copyright (C) 2018-2024, AdaCore +#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.gpr comment.line.double-dash.gpr +>-- +#^^ source.gpr comment.line.double-dash.gpr +>-- SPDX-License-Identifier: Apache-2.0 +#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.gpr comment.line.double-dash.gpr +>-- +#^^ source.gpr comment.line.double-dash.gpr +> +>with "gpr2.gpr"; +#^^^^ source.gpr meta.clause.with.gpr keyword.gpr +# ^ source.gpr meta.clause.with.gpr +# ^ source.gpr meta.clause.with.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^ source.gpr meta.clause.with.gpr string.quoted.double.gpr +# ^ source.gpr meta.clause.with.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.clause.with.gpr punctuation.gpr +>with "libadalang"; +#^^^^ source.gpr meta.clause.with.gpr keyword.gpr +# ^ source.gpr meta.clause.with.gpr +# ^ source.gpr meta.clause.with.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^ source.gpr meta.clause.with.gpr string.quoted.double.gpr +# ^ source.gpr meta.clause.with.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.clause.with.gpr punctuation.gpr +>with "lal_tools.gpr"; +#^^^^ source.gpr meta.clause.with.gpr keyword.gpr +# ^ source.gpr meta.clause.with.gpr +# ^ source.gpr meta.clause.with.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^ source.gpr meta.clause.with.gpr string.quoted.double.gpr +# ^ source.gpr meta.clause.with.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.clause.with.gpr punctuation.gpr +>with "lal_refactor.gpr"; +#^^^^ source.gpr meta.clause.with.gpr keyword.gpr +# ^ source.gpr meta.clause.with.gpr +# ^ source.gpr meta.clause.with.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^^^^ source.gpr meta.clause.with.gpr string.quoted.double.gpr +# ^ source.gpr meta.clause.with.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.clause.with.gpr punctuation.gpr +>with "ada_libfswatch.gpr"; +#^^^^ source.gpr meta.clause.with.gpr keyword.gpr +# ^ source.gpr meta.clause.with.gpr +# ^ source.gpr meta.clause.with.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^^^^^^ source.gpr meta.clause.with.gpr string.quoted.double.gpr +# ^ source.gpr meta.clause.with.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.clause.with.gpr punctuation.gpr +>with "libgnatdoc.gpr"; +#^^^^ source.gpr meta.clause.with.gpr keyword.gpr +# ^ source.gpr meta.clause.with.gpr +# ^ source.gpr meta.clause.with.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^^ source.gpr meta.clause.with.gpr string.quoted.double.gpr +# ^ source.gpr meta.clause.with.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.clause.with.gpr punctuation.gpr +>with "spawn.gpr"; +#^^^^ source.gpr meta.clause.with.gpr keyword.gpr +# ^ source.gpr meta.clause.with.gpr +# ^ source.gpr meta.clause.with.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^ source.gpr meta.clause.with.gpr string.quoted.double.gpr +# ^ source.gpr meta.clause.with.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.clause.with.gpr punctuation.gpr +> +>with "lsp_3_17"; +#^^^^ source.gpr meta.clause.with.gpr keyword.gpr +# ^ source.gpr meta.clause.with.gpr +# ^ source.gpr meta.clause.with.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^ source.gpr meta.clause.with.gpr string.quoted.double.gpr +# ^ source.gpr meta.clause.with.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.clause.with.gpr punctuation.gpr +>with "lsp_common"; +#^^^^ source.gpr meta.clause.with.gpr keyword.gpr +# ^ source.gpr meta.clause.with.gpr +# ^ source.gpr meta.clause.with.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^ source.gpr meta.clause.with.gpr string.quoted.double.gpr +# ^ source.gpr meta.clause.with.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.clause.with.gpr punctuation.gpr +> +>project LSP_Server is +#^^^^^^^ source.gpr meta.project.gpr keyword.gpr +# ^ source.gpr meta.project.gpr +# ^^^^^^^^^^ source.gpr meta.project.gpr entity.name.project.gpr entity.name.gpr +# ^ source.gpr meta.project.gpr +# ^^ source.gpr meta.project.gpr keyword.gpr +> +> VERSION := external ("VERSION", "latest"); +#^^^ source.gpr meta.project.gpr +# ^^^^^^^ source.gpr meta.project.gpr meta.declaration.variable.gpr variable.name.gpr entity.name.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr +# ^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr +# ^^^^^^^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr variable.language.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr punctuation.gpr +> +> BUILD_DATE := external ("BUILD_DATE", "unknown"); +#^^^ source.gpr meta.project.gpr +# ^^^^^^^^^^ source.gpr meta.project.gpr meta.declaration.variable.gpr variable.name.gpr entity.name.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr +# ^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr +# ^^^^^^^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr variable.language.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr punctuation.gpr +> +> type Library_Kind is ("static", "static-pic", "relocatable"); +#^^^ source.gpr meta.project.gpr +# ^^^^ source.gpr meta.project.gpr meta.declaration.type.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr +# ^^^^^^^^^^^^ source.gpr meta.project.gpr meta.declaration.type.gpr entity.name.type.gpr entity.name.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr +# ^^ source.gpr meta.project.gpr meta.declaration.type.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^ source.gpr meta.project.gpr meta.declaration.type.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^ source.gpr meta.project.gpr meta.declaration.type.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^ source.gpr meta.project.gpr meta.declaration.type.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr punctuation.gpr +> Library_Type : Library_Kind := external("ALS_LIBRARY_TYPE", +#^^^ source.gpr meta.project.gpr +# ^^^^^^^^^^^^ source.gpr meta.project.gpr meta.declaration.variable.gpr variable.name.gpr entity.name.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.declaration.variable.type.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.declaration.variable.type.gpr +# ^^^^^^^^^^^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.declaration.variable.type.gpr entity.name.type.gpr entity.name.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.declaration.variable.type.gpr +# ^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr +# ^^^^^^^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr variable.language.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr punctuation.gpr +> external("LIBRARY_TYPE", "relocatable")); +#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr +# ^^^^^^^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr meta.external.gpr variable.language.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr meta.external.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr meta.external.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr meta.external.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr meta.external.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr punctuation.gpr +> +> type OS_KIND is ("Windows_NT", "unix", "osx"); +#^^^ source.gpr meta.project.gpr +# ^^^^ source.gpr meta.project.gpr meta.declaration.type.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr +# ^^^^^^^ source.gpr meta.project.gpr meta.declaration.type.gpr entity.name.type.gpr entity.name.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr +# ^^ source.gpr meta.project.gpr meta.declaration.type.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^ source.gpr meta.project.gpr meta.declaration.type.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^ source.gpr meta.project.gpr meta.declaration.type.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^ source.gpr meta.project.gpr meta.declaration.type.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.type.gpr punctuation.gpr +> OS : OS_KIND := external("OS", "unix"); +#^^^ source.gpr meta.project.gpr +# ^^ source.gpr meta.project.gpr meta.declaration.variable.gpr variable.name.gpr entity.name.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.declaration.variable.type.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.declaration.variable.type.gpr +# ^^^^^^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.declaration.variable.type.gpr entity.name.type.gpr entity.name.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.declaration.variable.type.gpr +# ^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr +# ^^^^^^^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr variable.language.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr meta.assignment.gpr meta.external.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.declaration.variable.gpr punctuation.gpr +> +> for Source_Dirs use +#^^^ source.gpr meta.project.gpr +# ^^^ source.gpr meta.project.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr +# ^^^^^^^^^^^ source.gpr meta.project.gpr meta.attribute.gpr entity.other.attribute-name.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr +# ^^^ source.gpr meta.project.gpr meta.attribute.gpr keyword.gpr +> ("../source/server", +#^^^^^ source.gpr meta.project.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +> "../source/ada", +#^^^^^^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +> "../source/common", +#^^^^^^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +> "../source/gpr", +#^^^^^^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +> "../source/ada/generated", +#^^^^^^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +> "../source/memory"); +#^^^^^^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr punctuation.gpr +> +> for Object_Dir use "../.obj/server"; +#^^^ source.gpr meta.project.gpr +# ^^^ source.gpr meta.project.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr +# ^^^^^^^^^^ source.gpr meta.project.gpr meta.attribute.gpr entity.other.attribute-name.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr +# ^^^ source.gpr meta.project.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.attribute.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr punctuation.gpr +> for Main use ("lsp-ada_driver.adb"); +#^^^ source.gpr meta.project.gpr +# ^^^ source.gpr meta.project.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr +# ^^^^ source.gpr meta.project.gpr meta.attribute.gpr entity.other.attribute-name.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr +# ^^^ source.gpr meta.project.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr punctuation.gpr +> -- Need C++ to use a linker compatible with libfswatch +#^^^ source.gpr meta.project.gpr +# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr comment.line.double-dash.gpr +> for Languages use ("Ada", "C++"); +#^^^ source.gpr meta.project.gpr +# ^^^ source.gpr meta.project.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr +# ^^^^^^^^^ source.gpr meta.project.gpr meta.attribute.gpr entity.other.attribute-name.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr +# ^^^ source.gpr meta.project.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.attribute.gpr punctuation.gpr +> +> package Naming is +#^^^ source.gpr meta.project.gpr +# ^^^^^^^ source.gpr meta.project.gpr meta.package.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr +# ^^^^^^ source.gpr meta.project.gpr meta.package.gpr entity.name.package.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr keyword.gpr +> case LSP_Common.OS_API is +#^^^^^^ source.gpr meta.project.gpr meta.package.gpr +# ^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr keyword.control.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr +# ^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr variable.name.gpr variable.name.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr variable.name.gpr punctuation.gpr +# ^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr variable.name.gpr variable.name.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr keyword.control.gpr +> when "Windows_NT" => +#^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr +# ^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr keyword.control.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr keyword.control.gpr +> for Implementation ("LSP.Stdio_Streams.Initialize") +#^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr +# ^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr entity.other.attribute-name.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr +> use "lsp-stdio_streams-init_windows.adb"; +#^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr punctuation.gpr +> +> when others => +#^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr +# ^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr keyword.control.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr +# ^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr keyword.control.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr keyword.control.gpr +> for Implementation ("LSP.Stdio_Streams.Initialize") +#^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr +# ^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr entity.other.attribute-name.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr +> use "lsp-stdio_streams-init_others.adb"; +#^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr punctuation.gpr +> +> end case; +#^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr keyword.control.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr +# ^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr keyword.control.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr punctuation.gpr +> end Naming; +#^^^ source.gpr meta.project.gpr meta.package.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr +# ^^^^^^ source.gpr meta.project.gpr meta.package.gpr entity.name.package.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr punctuation.gpr +> +> package Compiler is +#^^^ source.gpr meta.project.gpr +# ^^^^^^^ source.gpr meta.project.gpr meta.package.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr +# ^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr entity.name.package.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr keyword.gpr +> for Default_Switches ("Ada") use +#^^^^^^ source.gpr meta.project.gpr meta.package.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr entity.other.attribute-name.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr keyword.gpr +> LSP_3_17.Compiler'Default_Switches ("Ada"); +#^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.attribute_reference.gpr variable.name.gpr variable.name.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.attribute_reference.gpr variable.name.gpr punctuation.gpr +# ^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.attribute_reference.gpr variable.name.gpr variable.name.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.attribute_reference.gpr punctuation.gpr +# ^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.attribute_reference.gpr meta.attribute_reference.attribute_name variable.name.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.attribute_reference.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.attribute_reference.gpr meta.attribute_reference.attribute_index punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.attribute_reference.gpr meta.attribute_reference.attribute_index string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.attribute_reference.gpr meta.attribute_reference.attribute_index string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.attribute_reference.gpr meta.attribute_reference.attribute_index string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.attribute_reference.gpr meta.attribute_reference.attribute_index punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr punctuation.gpr +> for Switches ("lsp-ada_driver.adb") use +#^^^^^^ source.gpr meta.project.gpr meta.package.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr entity.other.attribute-name.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr keyword.gpr +> LSP_3_17.Compiler'Default_Switches ("Ada") +#^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.attribute_reference.gpr variable.name.gpr variable.name.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.attribute_reference.gpr variable.name.gpr punctuation.gpr +# ^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.attribute_reference.gpr variable.name.gpr variable.name.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.attribute_reference.gpr punctuation.gpr +# ^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.attribute_reference.gpr meta.attribute_reference.attribute_name variable.name.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.attribute_reference.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.attribute_reference.gpr meta.attribute_reference.attribute_index punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.attribute_reference.gpr meta.attribute_reference.attribute_index string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.attribute_reference.gpr meta.attribute_reference.attribute_index string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.attribute_reference.gpr meta.attribute_reference.attribute_index string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.attribute_reference.gpr meta.attribute_reference.attribute_index punctuation.gpr +> & ("-gnateDVERSION=""" & VERSION & """", +#^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr +# ^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr variable.name.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +> "-gnateDBUILD_DATE=""" & BUILD_DATE & """"); +#^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr +# ^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr variable.name.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr punctuation.gpr +> for Switches ("s-memory.adb") use ("-g", "-O2", "-gnatpg"); +#^^^^^^ source.gpr meta.project.gpr meta.package.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr entity.other.attribute-name.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr punctuation.gpr +> for Local_Configuration_Pragmas use "gnat.adc"; +#^^^^^^ source.gpr meta.project.gpr meta.package.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr entity.other.attribute-name.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr punctuation.gpr +> end Compiler; +#^^^ source.gpr meta.project.gpr meta.package.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr +# ^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr entity.name.package.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr punctuation.gpr +> +> package Linker is +#^^^ source.gpr meta.project.gpr +# ^^^^^^^ source.gpr meta.project.gpr meta.package.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr +# ^^^^^^ source.gpr meta.project.gpr meta.package.gpr entity.name.package.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr keyword.gpr +> case Library_Type is +#^^^^^^ source.gpr meta.project.gpr meta.package.gpr +# ^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr keyword.control.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr +# ^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr variable.name.gpr variable.name.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr keyword.control.gpr +> when "static" | "static-pic" => +#^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr +# ^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr keyword.control.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr keyword.control.gpr +> case OS is +#^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr +# ^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr keyword.control.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr variable.name.gpr variable.name.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr keyword.control.gpr +> when "Windows_NT" => +#^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr +# ^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr keyword.control.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr keyword.control.gpr +> for Switches ("Ada") use +#^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr +# ^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr entity.other.attribute-name.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr keyword.gpr +> ("-static", "-static-libstdc++", "-static-libgcc", +#^^^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +> "-fstack-protector"); +#^^^^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr punctuation.gpr +> -- Stack protector forces libssp.a linking for libgmp.a +#^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr +# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr comment.line.double-dash.gpr +> when "osx" | "unix" => +#^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr +# ^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr keyword.control.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr keyword.control.gpr +> -- On UNIX, we want to link libc dynamically: needed to find +#^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr +# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr comment.line.double-dash.gpr +> -- a recent version of iconv_open (and a recommended practice) +#^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr +# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr comment.line.double-dash.gpr +> for Switches ("Ada") use ("-static-libstdc++", "-static-libgcc"); +#^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr +# ^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr entity.other.attribute-name.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr meta.attribute.gpr punctuation.gpr +> end case; +#^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr meta.case.when.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr keyword.control.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr +# ^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr keyword.control.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr meta.case.gpr punctuation.gpr +> when "relocatable" => +#^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr +# ^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr keyword.control.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr keyword.control.gpr +> null; +#^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr +# ^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr +> end case; +#^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr meta.case.when.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr keyword.control.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr +# ^^^^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr keyword.control.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.case.gpr punctuation.gpr +> end Linker; +#^^^ source.gpr meta.project.gpr meta.package.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr +# ^^^^^^ source.gpr meta.project.gpr meta.package.gpr entity.name.package.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr punctuation.gpr +> +> package Binder is +#^^^ source.gpr meta.project.gpr +# ^^^^^^^ source.gpr meta.project.gpr meta.package.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr +# ^^^^^^ source.gpr meta.project.gpr meta.package.gpr entity.name.package.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr keyword.gpr +> for Switches ("ada") use ("-E"); +#^^^^^^ source.gpr meta.project.gpr meta.package.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr entity.other.attribute-name.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr meta.string_list.gpr punctuation.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr punctuation.gpr +> end Binder; +#^^^ source.gpr meta.project.gpr meta.package.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr +# ^^^^^^ source.gpr meta.project.gpr meta.package.gpr entity.name.package.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr punctuation.gpr +> +> package Builder is +#^^^ source.gpr meta.project.gpr +# ^^^^^^^ source.gpr meta.project.gpr meta.package.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr +# ^^^^^^^ source.gpr meta.project.gpr meta.package.gpr entity.name.package.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr keyword.gpr +> for Executable ("lsp-ada_driver") use "ada_language_server"; +#^^^^^^ source.gpr meta.project.gpr meta.package.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr entity.other.attribute-name.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^^^^^^^^^^^^^^^^^^^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr string.quoted.double.gpr punctuation.definition.string.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr meta.attribute.gpr punctuation.gpr +> end Builder; +#^^^ source.gpr meta.project.gpr meta.package.gpr +# ^^^ source.gpr meta.project.gpr meta.package.gpr keyword.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr +# ^^^^^^^ source.gpr meta.project.gpr meta.package.gpr entity.name.package.gpr +# ^ source.gpr meta.project.gpr meta.package.gpr punctuation.gpr +> +>end LSP_Server; +#^^^ source.gpr meta.project.gpr keyword.gpr +# ^ source.gpr meta.project.gpr +# ^^^^^^^^^^ source.gpr meta.project.gpr entity.name.project.gpr +# ^ source.gpr meta.project.gpr punctuation.gpr +> \ No newline at end of file