- Mar 07, 2019
-
-
peter klausler authored
Original-commit: flang-compiler/f18@3ed6199fedc2ba0d527cc7dd46c5ab67a7f0f1c7 Reviewed-on: https://github.com/flang-compiler/f18/pull/316 Tree-same-pre-rewrite: false
-
peter klausler authored
Original-commit: flang-compiler/f18@c09c4c9e00d15a5dd391216662665d48a908c4fd Reviewed-on: https://github.com/flang-compiler/f18/pull/316 Tree-same-pre-rewrite: false
-
peter klausler authored
Original-commit: flang-compiler/f18@07d196386e139b65fe18d4df32f06f994627aac3 Reviewed-on: https://github.com/flang-compiler/f18/pull/316 Tree-same-pre-rewrite: false
-
peter klausler authored
Original-commit: flang-compiler/f18@f5d39159354a994cdeb5ab1d4cbfea188c14e681 Reviewed-on: https://github.com/flang-compiler/f18/pull/316 Tree-same-pre-rewrite: false
-
Tim Keith authored
Create framework for checking statement semantics Original-commit: flang-compiler/f18@0fcdb68061b8d008d22e0cc0ff4ccdbb40ab8f44 Reviewed-on: https://github.com/flang-compiler/f18/pull/315
-
Tim Keith authored
DoConcurrentChecker depends on expressions being fully resolved so it can't be in the same pass as ExprChecker. The same will probably apply to AssignmentChecker when its finished. Checks that don't depend on expressions can go in the first pass with ExprChecker. Original-commit: flang-compiler/f18@c0785ec06f58098d262cf2f791a98e74bdcef11b Reviewed-on: https://github.com/flang-compiler/f18/pull/315
-
Tim Keith authored
Add a test to verify that AssignmentChecker is actually running. Original-commit: flang-compiler/f18@2c91604e9bff06eb8d63d79abda916802966602f Reviewed-on: https://github.com/flang-compiler/f18/pull/315 Tree-same-pre-rewrite: false
-
- Mar 06, 2019
-
-
Tim Keith authored
Add `SemanticsVisitor` as the visitor class to perform statement semantics checks. Its template parameters are "checker" classes that perform the checks. They have `Enter` and `Leave` functions that are called for the corresponding parse tree nodes (`Enter` before the children, `Leave` after). Unlike `Pre` and `Post` in visitors they cannot prevent the parse tree walker from visiting child nodes. Existing checks have been incorporated into this framework: - `ExprChecker` replaces `AnalyzeExpressions()` - `AssignmentChecker` replaces `AnalyzeAssignments()` - `DoConcurrentChecker` replaces `CheckDoConcurrentConstraints()` Adding a new checker requires: - defining the checker class: - with BaseChecker as virtual base class - constructible from `SemanticsContext` - with Enter/Leave functions for nodes of interest - add the checker class to the template parameters of `StatementSemantics` Because these checkers and also `ResolveNamesVisitor` require tracking the current statement source location, that has been moved into `SemanticsContext`. `ResolveNamesVisitor` and `SemanticsVisitor` update the location when `Statement` nodes are encountered, making it available for error messages. `AnalyzeKindSelector()` now has access to the current statement through the context and so no longer needs to have it passed in. Test `assign01.f90` was added to verify that `AssignmentChecker` is actually doing something. Original-commit: flang-compiler/f18@3a222c36731029fabf026e5301dc60f0587595be Reviewed-on: https://github.com/flang-compiler/f18/pull/315 Tree-same-pre-rewrite: false
-
Peter Klausler authored
More structure constructor semantics checking Original-commit: flang-compiler/f18@5561c9012c07c21cd043b0b0b8b2a03d6e42bebe Reviewed-on: https://github.com/flang-compiler/f18/pull/311
-
peter klausler authored
Original-commit: flang-compiler/f18@c0ab787cd1eb82a13fca9a473973b25e737da77a Reviewed-on: https://github.com/flang-compiler/f18/pull/311
-
peter klausler authored
Original-commit: flang-compiler/f18@a97f377ae6051d877df82036983cc6209a2e0d95 Reviewed-on: https://github.com/flang-compiler/f18/pull/311 Tree-same-pre-rewrite: false
-
- Mar 05, 2019
-
-
peter klausler authored
Original-commit: flang-compiler/f18@582c6d1eca5bc29fddadae4d25e418da4ace2c11 Reviewed-on: https://github.com/flang-compiler/f18/pull/311 Tree-same-pre-rewrite: false
-
peter klausler authored
Original-commit: flang-compiler/f18@40461345124b95de1f35828885e95d8bf0a235f1 Reviewed-on: https://github.com/flang-compiler/f18/pull/311 Tree-same-pre-rewrite: false
-
peter klausler authored
Original-commit: flang-compiler/f18@c9823da20746313005ee017413f8207a720a10b0 Reviewed-on: https://github.com/flang-compiler/f18/pull/311 Tree-same-pre-rewrite: false
-
peter klausler authored
Original-commit: flang-compiler/f18@386cd8a9b43f4e65c3e42febbae991fa87d277a9 Reviewed-on: https://github.com/flang-compiler/f18/pull/311 Tree-same-pre-rewrite: false
-
peter klausler authored
Original-commit: flang-compiler/f18@88cdb49f4892a20f2628f11373a0f1c9c32a6c1e Reviewed-on: https://github.com/flang-compiler/f18/pull/311 Tree-same-pre-rewrite: false
-
peter klausler authored
Original-commit: flang-compiler/f18@051c1dd923a3b321d1a19768414caf93732a3426 Reviewed-on: https://github.com/flang-compiler/f18/pull/311 Tree-same-pre-rewrite: false
-
peter klausler authored
Original-commit: flang-compiler/f18@f2d751d8a6c1bf31f69031bbdab0a823999ebf5c Reviewed-on: https://github.com/flang-compiler/f18/pull/311 Tree-same-pre-rewrite: false
-
peter klausler authored
Original-commit: flang-compiler/f18@56e83d4dd64dd7d30b2ce4bbf124f2c39bc14b58 Reviewed-on: https://github.com/flang-compiler/f18/pull/311 Tree-same-pre-rewrite: false
-
peter klausler authored
Original-commit: flang-compiler/f18@2c3368fb5f6178bb997936bb506deecc2d8b7d03 Reviewed-on: https://github.com/flang-compiler/f18/pull/311 Tree-same-pre-rewrite: false
-
peter klausler authored
Original-commit: flang-compiler/f18@bea98aeb9638b9d584488ae5faf72d53f1747a5f Reviewed-on: https://github.com/flang-compiler/f18/pull/311 Tree-same-pre-rewrite: false
-
Peter Klausler authored
Add `ForwardReference<>` class template Original-commit: flang-compiler/f18@b541a4d167530138025b8a0c8dd1031144ab8435 Reviewed-on: https://github.com/flang-compiler/f18/pull/314
-
peter klausler authored
Original-commit: flang-compiler/f18@09e9501951499625fdabdc04f3bcf7ae85b37467 Reviewed-on: https://github.com/flang-compiler/f18/pull/314
-
peter klausler authored
Original-commit: flang-compiler/f18@65abebd838ef6b20960f69595709db55f3e5a9b7 Reviewed-on: https://github.com/flang-compiler/f18/pull/314 Tree-same-pre-rewrite: false
-
Peter Klausler authored
Fix flang-compiler/f18#312 Original-commit: flang-compiler/f18@74a9426adf29b21a0971f6db224efbd77da989af Reviewed-on: https://github.com/flang-compiler/f18/pull/313
-
peter klausler authored
Original-commit: flang-compiler/f18@3248ec1cf93a18a7172eaeb90688de9fae4ab753 Reviewed-on: https://github.com/flang-compiler/f18/pull/313
-
peter klausler authored
Original-commit: flang-compiler/f18@7d0b365a6dcd02df245ee6ea2fcbadbdb31e86f6 Reviewed-on: https://github.com/flang-compiler/f18/pull/313 Tree-same-pre-rewrite: false
-
peter klausler authored
Original-commit: flang-compiler/f18@0b1369ce5511d728c10c1b00ca14a2c9c4572ac7 Reviewed-on: https://github.com/flang-compiler/f18/pull/313 Tree-same-pre-rewrite: false
-
peter klausler authored
Original-commit: flang-compiler/f18@625ffb4f1a09343725907fe51597e88e28a0ca91 Reviewed-on: https://github.com/flang-compiler/f18/pull/313 Tree-same-pre-rewrite: false
-
- Mar 02, 2019
-
-
psteinfeld authored
Fixed reference to a header file Original-commit: flang-compiler/f18@658bc758d7c4bcea7ffbf06968a2faa3f4c8a124 Reviewed-on: https://github.com/flang-compiler/f18/pull/310
-
Peter Steinfeld authored
Original-commit: flang-compiler/f18@22f93f0b307384ebe022aa300771fef40039c11e Reviewed-on: https://github.com/flang-compiler/f18/pull/310
-
- Mar 01, 2019
-
-
Peter Klausler authored
Rename to Fortran.h, update style guide, run clang-format on everything Original-commit: flang-compiler/f18@0cf07c3ace6b713f8ec0fb348af99a4ef04dd9e3 Reviewed-on: https://github.com/flang-compiler/f18/pull/308
-
peter klausler authored
Original-commit: flang-compiler/f18@3a9a185383fb4bf967624258f59e2f22cd143ed5 Reviewed-on: https://github.com/flang-compiler/f18/pull/308
-
peter klausler authored
Original-commit: flang-compiler/f18@aa2907d2260c34085360917e7fab43d8ee79b6e4 Reviewed-on: https://github.com/flang-compiler/f18/pull/308 Tree-same-pre-rewrite: false
-
Tim Keith authored
Fix bug in test_modfile.sh Original-commit: flang-compiler/f18@6e95724f0e2efda36c0efc16d7f6bfde90975a00 Reviewed-on: https://github.com/flang-compiler/f18/pull/309
-
Tim Keith authored
The expected mod files specified in the test do not necessarily appear in sorted order, and the desired order depends on what the `comm` command expects. So sort them to be sure it is right. Original-commit: flang-compiler/f18@730d0d0562dd0a4eabfde020fef9fe371d401ff5 Reviewed-on: https://github.com/flang-compiler/f18/pull/309
-
Tim Keith authored
Various name resolution bug fixes Original-commit: flang-compiler/f18@fc831f600e5d37f646d4a83fbec7befc4d5dffda Reviewed-on: https://github.com/flang-compiler/f18/pull/305
-
Tim Keith authored
This showed up in procinterface01. A function can have more than one PrefixSpec (e.g. `real elemental f()`). We need to ignore that ones that aren't types. Also, process the type after the ImplicitPart rather than after the SpecificationPart. The type of the function result variable could be accessed between those places. Original-commit: flang-compiler/f18@df85eedb925b6f8739d6f6ccd9820ff5d9e4f4c5 Reviewed-on: https://github.com/flang-compiler/f18/pull/305
-
Tim Keith authored
A module procedure interface body can access entities in its host without an IMPORT statement. So the `ImportKind` of the scope created for such an interface body should be `Default`, not `None` as it is for other interface bodies. Original-commit: flang-compiler/f18@24bb2668fdb626a4df76719345b02e533d015d79 Reviewed-on: https://github.com/flang-compiler/f18/pull/305 Tree-same-pre-rewrite: false
-
Tim Keith authored
The `GenericDetails::CheckSpecific()` check was happening too early. We have to wait until all procedures of the generic have been seen. The generic can have the same name as a module procedure only if that module procedure is a specific procedure of the generic. Improve the `SayAlreadyDeclared` error message when the previous declaration is a use-association Original-commit: flang-compiler/f18@269e3db6020a5acc51a291dfea98455e6a97d2d5 Reviewed-on: https://github.com/flang-compiler/f18/pull/305 Tree-same-pre-rewrite: false
-