Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support compiler options #44

Open
wants to merge 1 commit into
base: development
Choose a base branch
from

Conversation

msujew
Copy link
Contributor

@msujew msujew commented Feb 11, 2025

Closes #9

Provides an initial implementation of the compiler options feature of PL/I. This includes:

  1. Parsing the compiler options from the *PROCESS statement of files
  2. Reading the compiler options from a pgm_conf.json file in the workspace root (this can be changed later).
  3. Providing error markers for incorrectly specified compiler options

What is still left to do:

  1. A lot of the compiler options haven't been completely implemented yet. These will need to be implemented as necessary, as some simply aren't relevant for the language server
  2. Some values of OR and NOT do not work yet, as they require the preprocessor PR to land first (similar with the NAMES option)
  3. The pgm_conf.json does not align to the schema of the other zowe language servers yet. We will address this in a later PR.

@msujew msujew requested a review from asatklichov February 11, 2025 13:42
Copy link

github-actions bot commented Feb 11, 2025

PR Preview Action v1.6.0

🚀 View preview at
https://zowe.github.io/zowe-pli-language-support/pr/pr-44/

Built to branch previews at 2025-03-03 14:56 UTC.
Preview will be ready when the GitHub Pages deployment is complete.

@asatklichov
Copy link

Regarding last compiler options discussion here is the findings

@msujew msujew force-pushed the feature/msujew/compiler-options branch from 7796e8b to cc84b51 Compare February 18, 2025 14:31
@msujew msujew changed the base branch from main to development February 19, 2025 14:19
@msujew msujew force-pushed the feature/msujew/compiler-options branch from 6aaefba to f03ab7a Compare March 3, 2025 14:20
Signed-off-by: Mark Sujew <mark.sujew@typefox.io>
@msujew msujew force-pushed the feature/msujew/compiler-options branch from f03ab7a to a017f92 Compare March 3, 2025 14:55
@msujew
Copy link
Contributor Author

msujew commented Mar 3, 2025

@asatklichov I believe I've resolved most issues. Two are left:

  1. Numbers vs IDs: This is a consequence of the lexing and will change with the preprocessor. I will keep it for now, and we will revisit it later
  2. The NOT and OR change is deactivated for now. We will enable it once [feature] Preprocessor Support #11 is integrated.

@msujew msujew requested a review from asatklichov March 3, 2025 15:09
positionTracking: "full",
});

class Parser extends EmbeddedActionsParser {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we rename this Parser to specific like COParser or CompilerOptionsParser? If it is intented to be generic parser then better keep it in 'parser' folder. With new model I expect this will be changed anyway.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure, it's a good idea to rename it. But yes, you're right - it will eventually be moved into the main parser once the migration is complete.

Copy link

@asatklichov asatklichov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@@ -0,0 +1,142 @@
import { describe, test, expect } from "vitest";
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please add the copyright header

@msujew msujew mentioned this pull request Apr 2, 2025
@msujew
Copy link
Contributor Author

msujew commented Apr 3, 2025

Blocked by #68 right now :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[feature] Compiler Options
3 participants