Peter Klausler [Thu, 1 Mar 2018 21:34:48 +0000 (13:34 -0800)]
[flang] Merge pull request flang-compiler/f18#21 from ThePortlandGroup/pmk-fix
Fix parsing error on PROCEDURE statement in derived type definition.
Original-commit: flang-compiler/f18@
e9c218df4271dbc88aa44c01f90f6119abb43115
Reviewed-on: https://github.com/flang-compiler/f18/pull/21
peter klausler [Thu, 1 Mar 2018 19:28:13 +0000 (11:28 -0800)]
[flang] Fix parsing error on PROCEDURE statement in derived type definition.
Improve error recovery in that context.
Original-commit: flang-compiler/f18@
b9e48504e61132c97dfe09fa85732ddfa97078a6
Reviewed-on: https://github.com/flang-compiler/f18/pull/21
Peter Klausler [Wed, 28 Feb 2018 22:59:03 +0000 (14:59 -0800)]
[flang] Merge pull request flang-compiler/f18#20 from ThePortlandGroup/pmk-traits
Trait-based parse tree traversal.
Original-commit: flang-compiler/f18@
0f8a4aaf07ac198a3b36fc1689c4c57faa7b2f44
Reviewed-on: https://github.com/flang-compiler/f18/pull/20
peter klausler [Wed, 28 Feb 2018 22:55:45 +0000 (14:55 -0800)]
[flang] Follow own new style rule about returns and elses.
Original-commit: flang-compiler/f18@
665fdf72d13314297605285c9ba4c6089418f270
Reviewed-on: https://github.com/flang-compiler/f18/pull/20
peter klausler [Wed, 28 Feb 2018 22:53:04 +0000 (14:53 -0800)]
[flang] Run clang-format.
Original-commit: flang-compiler/f18@
cd52d99f219be0f37c36cf644f4bffae3b537f31
Reviewed-on: https://github.com/flang-compiler/f18/pull/20
Tree-same-pre-rewrite: false
peter klausler [Wed, 28 Feb 2018 22:51:45 +0000 (14:51 -0800)]
[flang] Improvements suggested by Tim.
Original-commit: flang-compiler/f18@
c3d2e3e745187425655ce1122a0d959ca3f99988
Reviewed-on: https://github.com/flang-compiler/f18/pull/20
Tree-same-pre-rewrite: false
peter klausler [Wed, 28 Feb 2018 21:24:01 +0000 (13:24 -0800)]
[flang] Trait-based parse tree traversal.
Add a CLASS_TRAIT macro to idioms.h to define template metaprogramming
based on definable traits of user-defined classes. Tweak the boilerplate
macros in parse-tree.h to add traits to the empty, wrapper, union, and
tuple classes in the parse tree. Replace the macros in parse-tree-visitor.h
with trait-driven templates.
Original-commit: flang-compiler/f18@
02400146fbebc8ef6d608699153146721a40dc37
Reviewed-on: https://github.com/flang-compiler/f18/pull/20
Tree-same-pre-rewrite: false
Tim Keith [Wed, 28 Feb 2018 00:52:29 +0000 (16:52 -0800)]
[flang] Merge pull request flang-compiler/f18#18 from ThePortlandGroup/tsk1
Use macros to reduce boilerplate.
Original-commit: flang-compiler/f18@
b9f25364a8b201ab71f6208f1923d8ca8670595a
Reviewed-on: https://github.com/flang-compiler/f18/pull/18
Tim Keith [Tue, 27 Feb 2018 00:58:44 +0000 (16:58 -0800)]
[flang] Use macros to reduce boilerplate.
The common cases of wrapper, tuple, and union classes can be further
reduced by using macros to define the Walk functions.
Original-commit: flang-compiler/f18@
29e02c48869e48256e277635ccb1618804e47396
Reviewed-on: https://github.com/flang-compiler/f18/pull/18
Peter Klausler [Wed, 28 Feb 2018 00:35:08 +0000 (16:35 -0800)]
[flang] Merge pull request flang-compiler/f18#19 from ThePortlandGroup/pmk-fix-master
Fix some bugs that I noticed while running regression tests.
Original-commit: flang-compiler/f18@
0d6c927f8fa0fbf94a11484d4f58100331b46fe5
Reviewed-on: https://github.com/flang-compiler/f18/pull/19
peter klausler [Wed, 28 Feb 2018 00:33:10 +0000 (16:33 -0800)]
[flang] Fix test: do not allow & as continuation marker in fixed form if in a character literal.
Original-commit: flang-compiler/f18@
26c07eb2e5d2b9af67f41aba82955acadfbb019a
Reviewed-on: https://github.com/flang-compiler/f18/pull/19
peter klausler [Tue, 27 Feb 2018 22:02:10 +0000 (14:02 -0800)]
[flang] Fix some bugs that I noticed while running regression tests.
Add characters.h to consolidate all per-character functions
and reduce dependence on <cctype>.
Add omitted DIRECT= and UNFORMATTED= specifiers to INQUIRE statement.
Add Interval<>, rebase ProvenanceRange upon it, rebase CharPointerWithLength
and rename it ContiguousChars.
Reformat C++.
Original-commit: flang-compiler/f18@
78c73c62badb3f2c32a931bbcdf0dec6b26b0312
Reviewed-on: https://github.com/flang-compiler/f18/pull/19
Tree-same-pre-rewrite: false
Peter Klausler [Tue, 27 Feb 2018 00:00:43 +0000 (16:00 -0800)]
[flang] Merge pull request flang-compiler/f18#16 from ThePortlandGroup/pmk-minor
Preserve some minor changes...
Original-commit: flang-compiler/f18@
7b3e4908bdc588e4531af5061f628c7c088bcb96
Reviewed-on: https://github.com/flang-compiler/f18/pull/16
peter klausler [Fri, 16 Feb 2018 19:14:11 +0000 (11:14 -0800)]
[flang] Preserve some minor changes that accumulated as I was implementing
an unparsing feature.
Enum classes in parse tree node class types are now defined with
a macro so that the names of the enumerations can be captured for
formatting purposes.
Add a TODO comment.
Rebase to new master with parse tree traversal code.
Original-commit: flang-compiler/f18@
d6bfcfd526cc8464046e855181b7771631793313
Reviewed-on: https://github.com/flang-compiler/f18/pull/16
Tim Keith [Mon, 26 Feb 2018 23:12:10 +0000 (15:12 -0800)]
[flang] Merge pull request flang-compiler/f18#17 from ThePortlandGroup/tsk1
Fix classes with variant and other fields
Original-commit: flang-compiler/f18@
1c2f9e8e8a68397c038c1924444352468a808046
Reviewed-on: https://github.com/flang-compiler/f18/pull/17
Tim Keith [Mon, 26 Feb 2018 23:07:24 +0000 (15:07 -0800)]
[flang] Fix classes with variant and other fields
Fortran::FormatItem and UseStmt have both normal fields and a variant
named 'u'. The Walk calls for the normal fields were missing.
These were the only two classes I found where this occurs.
Original-commit: flang-compiler/f18@
23b8695a74631e0207f7c87be5c602896a9f0880
Reviewed-on: https://github.com/flang-compiler/f18/pull/17
Tim Keith [Mon, 26 Feb 2018 22:52:27 +0000 (14:52 -0800)]
[flang] Merge pull request flang-compiler/f18#15 from ThePortlandGroup/tsk1
First implementation of a parse tree visitor
Original-commit: flang-compiler/f18@
b9a9d249f3178a5ca6883aaef5fdceda3e988c4b
Reviewed-on: https://github.com/flang-compiler/f18/pull/15
Tim Keith [Mon, 26 Feb 2018 22:28:32 +0000 (14:28 -0800)]
[flang] Add Unparse function.
Unparse takes a parse tree and converts it back to Fortran.
class UnparseVisitor implements a parse tree visitor that emits
the appropriate Fortran source for each node that it visits.
It is only partially implemented so far.
Change f18 to dump the parse tree using Unparse.
Original-commit: flang-compiler/f18@
e80c13ec88811fbf5101cede385aca219f15ead7
Reviewed-on: https://github.com/flang-compiler/f18/pull/15
Tim Keith [Mon, 26 Feb 2018 22:22:58 +0000 (14:22 -0800)]
[flang] Reorder the Walk functions.
Group the Walk functions that call WalkTupleClass, WalkUnionClass,
WalkWrapperClass all together, after the ones that don't follow a
simple pattern like that.
Fix the name of the include guard macro.
Original-commit: flang-compiler/f18@
711613a4adaaf6083966b3993472dc74e97ba026
Reviewed-on: https://github.com/flang-compiler/f18/pull/15
Tree-same-pre-rewrite: false
Tim Keith [Sun, 25 Feb 2018 15:35:56 +0000 (07:35 -0800)]
[flang] Add some missing Walk functions.
The classes in parse-tree.h that used WRAPPER_CLASS_BOILERPLATE were
accidentally omitted.
Also remove the anonymous namespace around utilities like
WalkWrapperClass as they can be useful outside this file too.
Original-commit: flang-compiler/f18@
d47c505441f6a4baec1345839a53abaf1b9fe668
Reviewed-on: https://github.com/flang-compiler/f18/pull/15
Tree-same-pre-rewrite: false
Tim Keith [Sat, 24 Feb 2018 00:03:16 +0000 (16:03 -0800)]
[flang] Rename "visit" to "Walk" to avoid conflict with std::visit.
The thing called on each parse tree node during the walk is still
referred to as a visitor.
Change "pre" to "Pre" and "post" to "Post" to follow the naming
conventions.
Original-commit: flang-compiler/f18@
a6ea1296b150db45495b2bbd06b45432fa009c53
Reviewed-on: https://github.com/flang-compiler/f18/pull/15
Tree-same-pre-rewrite: false
Tim Keith [Fri, 23 Feb 2018 22:52:13 +0000 (14:52 -0800)]
[flang] Add helpers for wrapper/tuple/variant classes.
Add VisitWrapperClass, VisitTupleClass, and VisitVariantClass to
simplify the common cases in the parse tree. ForEachInTuple is used to
implement VisitTupleClass.
Original-commit: flang-compiler/f18@
c6ae2b833b5a12c9429f7af39806a8483b5c0394
Reviewed-on: https://github.com/flang-compiler/f18/pull/15
Tree-same-pre-rewrite: false
Tim Keith [Fri, 23 Feb 2018 01:00:56 +0000 (17:00 -0800)]
[flang] First implementation of a parse tree visitor
Original-commit: flang-compiler/f18@
0b441831f455b9458a943090d7e9ed334aaf159c
Reviewed-on: https://github.com/flang-compiler/f18/pull/15
Tree-same-pre-rewrite: false
Stephane Chauveau [Thu, 22 Feb 2018 10:24:53 +0000 (11:24 +0100)]
[flang] Merge pull request flang-compiler/f18#13 from ThePortlandGroup/sch1
Add simple recursive CMake directory structure
Original-commit: flang-compiler/f18@
c20c4a34ffcdae6aa6575a64c9f1a83b906e35e0
Reviewed-on: https://github.com/flang-compiler/f18/pull/13
Stephane Chauveau [Mon, 19 Feb 2018 13:44:54 +0000 (14:44 +0100)]
[flang] Add missing include config file skeleton
Original-commit: flang-compiler/f18@
beb71e4e4bb75e04a60813cc2318b842c05e5613
Reviewed-on: https://github.com/flang-compiler/f18/pull/13
Stephane Chauveau [Mon, 19 Feb 2018 13:28:12 +0000 (14:28 +0100)]
[flang] Add simple recursive CMake directory structure
Original-commit: flang-compiler/f18@
a021b2ca768c2b8c03d626739d0754ba99e463d2
Reviewed-on: https://github.com/flang-compiler/f18/pull/13
Tree-same-pre-rewrite: false
klausler [Wed, 21 Feb 2018 21:45:47 +0000 (13:45 -0800)]
[flang] Merge pull request flang-compiler/f18#14 from ThePortlandGroup/pmk-msg
Put localization markers on the string literals used for messages.
Original-commit: flang-compiler/f18@
93089c2bc6063674add0ec1567acd7676a5a1f95
Reviewed-on: https://github.com/flang-compiler/f18/pull/14
peter klausler [Wed, 21 Feb 2018 20:12:52 +0000 (12:12 -0800)]
[flang] Support localizable formatted messages.
Original-commit: flang-compiler/f18@
e974321494b4fcecdb9bd0a5f82f0624c1a33696
Reviewed-on: https://github.com/flang-compiler/f18/pull/14
peter klausler [Tue, 20 Feb 2018 18:35:04 +0000 (10:35 -0800)]
[flang] Fix bug with "expected ..." messages in token strings.
Original-commit: flang-compiler/f18@
9cc84ba6fbbaed94481ec7781e124a7f4881a7b2
Reviewed-on: https://github.com/flang-compiler/f18/pull/14
Tree-same-pre-rewrite: false
peter klausler [Tue, 20 Feb 2018 17:57:30 +0000 (09:57 -0800)]
[flang] Use "..."_en_US for messages.
Original-commit: flang-compiler/f18@
fffa8815762a7fa449863a6fa0f7c4b72bd0d4e4
Reviewed-on: https://github.com/flang-compiler/f18/pull/14
Tree-same-pre-rewrite: false
peter klausler [Sat, 17 Feb 2018 00:57:40 +0000 (16:57 -0800)]
[flang] Convert all messages to MessageTexts ("..."_msg).
Original-commit: flang-compiler/f18@
33357f3657a6fea91af8cf8b5fd30b4be9efcdd0
Reviewed-on: https://github.com/flang-compiler/f18/pull/14
Tree-same-pre-rewrite: false
peter klausler [Fri, 16 Feb 2018 23:47:30 +0000 (15:47 -0800)]
[flang] Define MessageText and "..."_msg.
Original-commit: flang-compiler/f18@
6e9e16431c3de9b48bfa50dc489f7ddf73d783e4
Reviewed-on: https://github.com/flang-compiler/f18/pull/14
Tree-same-pre-rewrite: false
klausler [Fri, 16 Feb 2018 19:49:47 +0000 (11:49 -0800)]
[flang] Merge pull request flang-compiler/f18#12 from ThePortlandGroup/pmk1
Update the header file guards in lib/parser to reflect the introducti…
Original-commit: flang-compiler/f18@
5ad8f67f4ac7eccd424138e3a1591217b07f7930
Reviewed-on: https://github.com/flang-compiler/f18/pull/12
peter klausler [Fri, 16 Feb 2018 19:42:17 +0000 (11:42 -0800)]
[flang] Update the header file guards in lib/parser to reflect the introduction of the parser namespace.
Original-commit: flang-compiler/f18@
a11bb88396d6d074e0b55cf5ec19b0ddfb52a8fc
Reviewed-on: https://github.com/flang-compiler/f18/pull/12
klausler [Fri, 16 Feb 2018 19:03:54 +0000 (11:03 -0800)]
[flang] Merge pull request flang-compiler/f18#11 from ThePortlandGroup/pmk1
Remove old character "cooking" parser combinators
Original-commit: flang-compiler/f18@
def973c39c613ad1f26a1ef2de49fdbd7c3d4934
Reviewed-on: https://github.com/flang-compiler/f18/pull/11
peter klausler [Fri, 16 Feb 2018 18:58:17 +0000 (10:58 -0800)]
[flang] Reformatting and some comment clean-up.
Original-commit: flang-compiler/f18@
cedd3d82cf5aef7ba2bddfa4e13f13efac5600a7
Reviewed-on: https://github.com/flang-compiler/f18/pull/11
peter klausler [Fri, 16 Feb 2018 18:41:16 +0000 (10:41 -0800)]
[flang] Remove old character "cooking" parser combinators that handled Fortran
comments, continuations, &c. that have become obsolete with the use
of the new C++-coded prescanner module. Clean out members from
ParseState that were used only by cookedNextChar and its sub-parsers.
Original-commit: flang-compiler/f18@
41717531e5eb17dc4f090babbeb63745397d80cc
Reviewed-on: https://github.com/flang-compiler/f18/pull/11
Tree-same-pre-rewrite: false
klausler [Fri, 16 Feb 2018 17:25:44 +0000 (09:25 -0800)]
[flang] Merge pull request flang-compiler/f18#10 from ThePortlandGroup/pmk2
Remove a temporary #include <iostream> and auto-detect -Mfixed
Original-commit: flang-compiler/f18@
93ecf8d908eafc65da3f0e3d1da00f119d12a86b
Reviewed-on: https://github.com/flang-compiler/f18/pull/10
peter klausler [Fri, 16 Feb 2018 01:12:50 +0000 (17:12 -0800)]
[flang] Remove a temporary #include <iostream> and auto-detect -Mfixed from a .f suffix.
Original-commit: flang-compiler/f18@
962c7ed0ef01a9904e7ccf0d2850b38d0c6bb46e
Reviewed-on: https://github.com/flang-compiler/f18/pull/10
klausler [Thu, 15 Feb 2018 23:58:44 +0000 (15:58 -0800)]
[flang] Merge pull request flang-compiler/f18#9 from ThePortlandGroup/pmk1
Implement source provenance tracking and file inclusion.
Original-commit: flang-compiler/f18@
1eb7d6028c7bd1dea1b51e0ab097544627d722e7
Reviewed-on: https://github.com/flang-compiler/f18/pull/9
peter klausler [Thu, 15 Feb 2018 23:56:50 +0000 (15:56 -0800)]
[flang] Fix a couple bugs noticed while resolving merge.
Original-commit: flang-compiler/f18@
dbb32c60a6f9789d2a341959672fd4244a413d1d
Reviewed-on: https://github.com/flang-compiler/f18/pull/9
peter klausler [Thu, 15 Feb 2018 23:26:10 +0000 (15:26 -0800)]
[flang] Complete merge of provenance feature.
Original-commit: flang-compiler/f18@
646f68be61b1bf0f653cc332a51374df71f0ed0b
Reviewed-on: https://github.com/flang-compiler/f18/pull/9
Tree-same-pre-rewrite: false
peter klausler [Wed, 7 Feb 2018 21:33:48 +0000 (13:33 -0800)]
[flang] Markdown tweaks in documentation.
Original-commit: flang-compiler/f18@
044148ead21f18e16716d5bc30819525c79065d0
Reviewed-on: https://github.com/flang-compiler/f18/pull/9
Tree-same-pre-rewrite: false
peter klausler [Thu, 15 Feb 2018 21:36:50 +0000 (13:36 -0800)]
[flang] Spruce up formatting of error message output.
Original-commit: flang-compiler/f18@
0750985bdf99e22bdbfbf3da793bd62f7c996425
Reviewed-on: https://github.com/flang-compiler/f18/pull/9
Tree-same-pre-rewrite: false
peter klausler [Thu, 15 Feb 2018 21:13:28 +0000 (13:13 -0800)]
[flang] Complete provenance tracking through macro calls.
Original-commit: flang-compiler/f18@
8c05a6543b647299104ae07a6a248b67f13ee24e
Reviewed-on: https://github.com/flang-compiler/f18/pull/9
Tree-same-pre-rewrite: false
peter klausler [Thu, 15 Feb 2018 18:42:36 +0000 (10:42 -0800)]
[flang] More precise source locations on error messages. Anticipate module file scanning.
Original-commit: flang-compiler/f18@
f4faadd3897fa90f705c50e432e1e7c7343f90cd
Reviewed-on: https://github.com/flang-compiler/f18/pull/9
Tree-same-pre-rewrite: false
peter klausler [Wed, 14 Feb 2018 01:04:13 +0000 (17:04 -0800)]
[flang] Remove #includes that were used for debugging.
Original-commit: flang-compiler/f18@
828ee8c2f0133515d260700e36590b83eaae57fc
Reviewed-on: https://github.com/flang-compiler/f18/pull/9
Tree-same-pre-rewrite: false
peter klausler [Wed, 14 Feb 2018 00:33:23 +0000 (16:33 -0800)]
[flang] Support #include directive.
Original-commit: flang-compiler/f18@
909622d9b77f8b70188d977f768b784433f8a820
Reviewed-on: https://github.com/flang-compiler/f18/pull/9
Tree-same-pre-rewrite: false
peter klausler [Tue, 13 Feb 2018 23:24:43 +0000 (15:24 -0800)]
[flang] Implement a directory search path for INCLUDE lines.
Original-commit: flang-compiler/f18@
62129e56008acc02c894c3cf2b936f76dbfa0060
Reviewed-on: https://github.com/flang-compiler/f18/pull/9
Tree-same-pre-rewrite: false
peter klausler [Tue, 13 Feb 2018 22:22:08 +0000 (14:22 -0800)]
[flang] Implement Fortran INCLUDE lines.
Original-commit: flang-compiler/f18@
d01af8950628b51baee28b5c9b8052b09f2b0dbf
Reviewed-on: https://github.com/flang-compiler/f18/pull/9
Tree-same-pre-rewrite: false
peter klausler [Tue, 13 Feb 2018 20:50:47 +0000 (12:50 -0800)]
[flang] Minor refactoring: extract TokenSequence into its own module.
Original-commit: flang-compiler/f18@
1b17b4a069d837f649192f0a6500e1c7ad76fad1
Reviewed-on: https://github.com/flang-compiler/f18/pull/9
Tree-same-pre-rewrite: false
peter klausler [Tue, 13 Feb 2018 20:24:54 +0000 (12:24 -0800)]
[flang] Preparatory work for file inclusion.
Original-commit: flang-compiler/f18@
1cbbd4a3574c97de0157007234108012c87fbd3f
Reviewed-on: https://github.com/flang-compiler/f18/pull/9
Tree-same-pre-rewrite: false
peter klausler [Tue, 13 Feb 2018 18:35:16 +0000 (10:35 -0800)]
[flang] Adjust CHECK() so that first token of program can begin with first character.
Original-commit: flang-compiler/f18@
2b77e466ffaf3620638e166116a39d0f5bf09224
Reviewed-on: https://github.com/flang-compiler/f18/pull/9
Tree-same-pre-rewrite: false
peter klausler [Tue, 13 Feb 2018 01:03:26 +0000 (17:03 -0800)]
[flang] Fix fixed form scanning, get tests passing again.
Original-commit: flang-compiler/f18@
2c8ff18e988143f81b0e3216386caabc1a6feeb4
Reviewed-on: https://github.com/flang-compiler/f18/pull/9
Tree-same-pre-rewrite: false
peter klausler [Mon, 12 Feb 2018 22:43:16 +0000 (14:43 -0800)]
[flang] Forge provenances for compiler-inserted text.
Original-commit: flang-compiler/f18@
dbdd01aa258557d45816d1a1e0588553c16bef6a
Reviewed-on: https://github.com/flang-compiler/f18/pull/9
Tree-same-pre-rewrite: false
peter klausler [Mon, 12 Feb 2018 21:26:32 +0000 (13:26 -0800)]
[flang] Fix macro definitions (broken by provenances earlier).
Original-commit: flang-compiler/f18@
3ed548b477e50f3a803b5e6fad05069351c37612
Reviewed-on: https://github.com/flang-compiler/f18/pull/9
Tree-same-pre-rewrite: false
peter klausler [Mon, 12 Feb 2018 20:48:13 +0000 (12:48 -0800)]
[flang] Restructure inter-class references for clarity.
Original-commit: flang-compiler/f18@
1836cd5d06e8cc0cc46fb9c954e9237337c0f5d3
Reviewed-on: https://github.com/flang-compiler/f18/pull/9
Tree-same-pre-rewrite: false
peter klausler [Mon, 12 Feb 2018 19:56:42 +0000 (11:56 -0800)]
[flang] Fix column tracking in fixed form.
Original-commit: flang-compiler/f18@
8c9a1013fa0861496e22cafde5d3c5326fae9a3a
Reviewed-on: https://github.com/flang-compiler/f18/pull/9
Tree-same-pre-rewrite: false
peter klausler [Fri, 9 Feb 2018 23:56:02 +0000 (15:56 -0800)]
[flang] Debugging new provenance support.
Original-commit: flang-compiler/f18@
1233f666da21d88fb84968c1e46cddf45557d0a1
Reviewed-on: https://github.com/flang-compiler/f18/pull/9
Tree-same-pre-rewrite: false
peter klausler [Fri, 9 Feb 2018 22:04:11 +0000 (14:04 -0800)]
[flang] Replace Position with Provenance everywhere.
Original-commit: flang-compiler/f18@
8c2da3f8cc687012756a85567553500fac64c824
Reviewed-on: https://github.com/flang-compiler/f18/pull/9
Tree-same-pre-rewrite: false
peter klausler [Thu, 8 Feb 2018 00:24:02 +0000 (16:24 -0800)]
[flang] Development of character provenance.
Original-commit: flang-compiler/f18@
88c532958006ad064cab88d2405055a456b07dcf
Reviewed-on: https://github.com/flang-compiler/f18/pull/9
Tree-same-pre-rewrite: false
peter klausler [Wed, 7 Feb 2018 21:18:36 +0000 (13:18 -0800)]
[flang] Begin work on character provenances.
Original-commit: flang-compiler/f18@
ea3c05af5a43396aad8e68fef1f068026a2d40e7
Reviewed-on: https://github.com/flang-compiler/f18/pull/9
Tree-same-pre-rewrite: false
Tim Keith [Thu, 15 Feb 2018 17:08:15 +0000 (09:08 -0800)]
[flang] Merge pull request flang-compiler/f18#8 from ThePortlandGroup/tsk1
More work on types
Original-commit: flang-compiler/f18@
f330b03fc206a1bc39cd46bf102db14a9f4d8b2a
Reviewed-on: https://github.com/flang-compiler/f18/pull/8
Tim Keith [Thu, 15 Feb 2018 16:27:19 +0000 (08:27 -0800)]
[flang] Rename methods with uppercase names.
Original-commit: flang-compiler/f18@
00fec54e5af1b88c4844cbc1b7cc3243a3d34dbf
Reviewed-on: https://github.com/flang-compiler/f18/pull/8
Tim Keith [Wed, 14 Feb 2018 23:29:18 +0000 (15:29 -0800)]
[flang] Add test-type.cc to build types from parse tree.
Original-commit: flang-compiler/f18@
47101317fbe56c6ea9b947c6d0eef913abd310e1
Reviewed-on: https://github.com/flang-compiler/f18/pull/8
Tree-same-pre-rewrite: false
Tim Keith [Wed, 14 Feb 2018 23:24:02 +0000 (15:24 -0800)]
[flang] Continue adding to type.h
New classes: Bound, DeclTypeSpec, ShapeSpec, ComponentArraySpec,
DataComponentDef, ProcDecl, ProcComponentDef, DerivedTypedef
Original-commit: flang-compiler/f18@
a09d1e8c81145a0dc92a8e26c0ca5a6a622309fd
Reviewed-on: https://github.com/flang-compiler/f18/pull/8
Tree-same-pre-rewrite: false
Tim Keith [Wed, 14 Feb 2018 23:07:59 +0000 (15:07 -0800)]
[flang] Add Attrs class to represent set of Attr
Original-commit: flang-compiler/f18@
8bb1f0eb9bee7c3de262eb82a9395127fd22db46
Reviewed-on: https://github.com/flang-compiler/f18/pull/8
Tree-same-pre-rewrite: false
Steve Scalpone [Wed, 14 Feb 2018 17:07:01 +0000 (12:07 -0500)]
[flang] Merge pull request flang-compiler/f18#7 from ThePortlandGroup/revert-6-schauveau_cmake
Revert "Schauveau cmake"
Original-commit: flang-compiler/f18@
f786d7c85884d5aaadf2cff59b9b08c75592d578
Reviewed-on: https://github.com/flang-compiler/f18/pull/7
Steve Scalpone [Wed, 14 Feb 2018 17:06:47 +0000 (09:06 -0800)]
[flang] Revert "Schauveau cmake"
Original-commit: flang-compiler/f18@
be33dc182a9bcfa664095886ca62b3b1db4eb797
Reviewed-on: https://github.com/flang-compiler/f18/pull/7
schauveau [Fri, 9 Feb 2018 09:09:20 +0000 (10:09 +0100)]
[flang] Merge pull request flang-compiler/f18#6 from ThePortlandGroup/schauveau_cmake
Merging since nobody appear to have any issues
Original-commit: flang-compiler/f18@
913597e53a1d2efd1ed364eedf6977e43cf07596
Reviewed-on: https://github.com/flang-compiler/f18/pull/6
Stephane Chauveau [Thu, 8 Feb 2018 15:27:55 +0000 (16:27 +0100)]
[flang] Fix incorrect clang/ directory name in include
Original-commit: flang-compiler/f18@
ff61e3228a26dbd6e2661fc45d145f4e90d83e3d
Reviewed-on: https://github.com/flang-compiler/f18/pull/6
Stephane Chauveau [Thu, 8 Feb 2018 14:59:02 +0000 (15:59 +0100)]
[flang] Simplified git clone in README
Original-commit: flang-compiler/f18@
198d2e6c8a8a0ffee461acc76f7d1a252ad366da
Reviewed-on: https://github.com/flang-compiler/f18/pull/6
Tree-same-pre-rewrite: false
Stephane Chauveau [Thu, 8 Feb 2018 14:01:55 +0000 (15:01 +0100)]
[flang] fix bad indentation in README
Original-commit: flang-compiler/f18@
60a0123f46b74d3fad942bf359ebe5ba11da5cdd
Reviewed-on: https://github.com/flang-compiler/f18/pull/6
Tree-same-pre-rewrite: false
Stephane Chauveau [Thu, 8 Feb 2018 14:00:09 +0000 (15:00 +0100)]
[flang] minor changres
Original-commit: flang-compiler/f18@
1d351d2114be216472b89ff2f4a07ceceddddb8d
Reviewed-on: https://github.com/flang-compiler/f18/pull/6
Tree-same-pre-rewrite: false
Stephane Chauveau [Thu, 8 Feb 2018 13:57:51 +0000 (14:57 +0100)]
[flang] updated build instructions in README.md
Original-commit: flang-compiler/f18@
0fea8bd042469738ab08bdc95fc46b24c6fac3ad
Reviewed-on: https://github.com/flang-compiler/f18/pull/6
Tree-same-pre-rewrite: false
Stephane Chauveau [Thu, 8 Feb 2018 13:48:30 +0000 (14:48 +0100)]
[flang] add preliminary README file
Original-commit: flang-compiler/f18@
1fc60916fbc3339056fe889e8ac50a2906387c49
Reviewed-on: https://github.com/flang-compiler/f18/pull/6
Tree-same-pre-rewrite: false
Stephane Chauveau [Thu, 8 Feb 2018 13:40:07 +0000 (14:40 +0100)]
[flang] after clang-format
Original-commit: flang-compiler/f18@
7e464a7c3315b9dfc6db2861145d7e3455652548
Reviewed-on: https://github.com/flang-compiler/f18/pull/6
Tree-same-pre-rewrite: false
Stephane Chauveau [Thu, 8 Feb 2018 13:33:30 +0000 (14:33 +0100)]
[flang] Add new global CMakefile infrastructure with examples
Original-commit: flang-compiler/f18@
81b91f327052cd0596e96af9c33b2d0e221d10f5
Reviewed-on: https://github.com/flang-compiler/f18/pull/6
Tree-same-pre-rewrite: false
Tim Keith [Thu, 8 Feb 2018 00:27:36 +0000 (16:27 -0800)]
[flang] Clean up Makefile, add reformat target.
Now the only targets in Makefile are Debug, Release, and reformat.
"make reformat" reformats all C++ source in place.
Also includes the result of "make reformat". Most of the changes were
just moving the "main" include up.
Original-commit: flang-compiler/f18@
cf7d3a7afb650b5fc952894136dd18e5551ac578
Tim Keith [Thu, 8 Feb 2018 00:08:09 +0000 (16:08 -0800)]
[flang] Merge pull request flang-compiler/f18#5 from ThePortlandGroup/tsk1
Move type.{h,cc} and attr.{h,cc}
Original-commit: flang-compiler/f18@
612918f261cd131b307e37e9c913c6b11d007079
Reviewed-on: https://github.com/flang-compiler/f18/pull/5
Tim Keith [Wed, 7 Feb 2018 23:54:07 +0000 (15:54 -0800)]
[flang] Move type.{h,cc} and attr.{h,cc}
The are now in new namespace and directory, "semantics", similar to
"parser".
Original-commit: flang-compiler/f18@
115a1341e2f072e19a3a37da85e9f7f91e42c2be
Reviewed-on: https://github.com/flang-compiler/f18/pull/5
Tim Keith [Wed, 7 Feb 2018 23:24:44 +0000 (15:24 -0800)]
[flang] Merge pull request flang-compiler/f18#3 from tskeith/type
Initial work on the representation of types.
Original-commit: flang-compiler/f18@
7f2bbe3f48eac010b93acdce5c6e7bf0a86308dc
Reviewed-on: https://github.com/flang-compiler/f18/pull/3
Tim Keith [Wed, 7 Feb 2018 23:19:54 +0000 (15:19 -0800)]
[flang] Adapt to new directory for idioms.cc, idioms.h.
Change idioms.h so that calls to die will work outside the parser
namespace.
Use unordered_map to cache IntConst values.
Original-commit: flang-compiler/f18@
9d06c385d9f2d9598f8e882d3badc9544c3567b9
Reviewed-on: https://github.com/flang-compiler/f18/pull/3
Tim Keith [Wed, 7 Feb 2018 21:57:58 +0000 (13:57 -0800)]
[flang] Address some of the review comments.
Original-commit: flang-compiler/f18@
ecdffa374590f5d36c9c3ab22d6108c1c128e596
Reviewed-on: https://github.com/flang-compiler/f18/pull/3
Tree-same-pre-rewrite: false
Tim Keith [Wed, 7 Feb 2018 00:46:29 +0000 (16:46 -0800)]
[flang] Initial work on the representation of types.
Still work to do for derived types components, array specs, type-bound
procedures, etc.
Added executable type-test to the cmake file which exercises some of the
basic functionality. Modified the Makefile so that "make Debug" does a
cmake build.
Original-commit: flang-compiler/f18@
02e8c4c867685959f8623ca8a4c2277756ecbe6c
Reviewed-on: https://github.com/flang-compiler/f18/pull/3
Tree-same-pre-rewrite: false
klausler [Wed, 7 Feb 2018 20:29:36 +0000 (12:29 -0800)]
[flang] Merge pull request flang-compiler/f18#4 from ThePortlandGroup/directories
Impose a directory structure and intermediate namespace.
Original-commit: flang-compiler/f18@
34fc2397aa8fa21510e8b477983c09c8499b4235
Reviewed-on: https://github.com/flang-compiler/f18/pull/4
peter klausler [Wed, 7 Feb 2018 20:27:36 +0000 (12:27 -0800)]
[flang] Tweaked .clang-format, then ran it.
Original-commit: flang-compiler/f18@
e10e43b6914e91414e4f8253c249c61df4a5ac32
Reviewed-on: https://github.com/flang-compiler/f18/pull/4
peter klausler [Wed, 7 Feb 2018 20:04:42 +0000 (12:04 -0800)]
[flang] Impose a directory structure. Move files around. Introduce
an intermediate "parser" namespace.
Original-commit: flang-compiler/f18@
690b6f0d1e92bdc694196f7857ffb0aa213f2edf
Reviewed-on: https://github.com/flang-compiler/f18/pull/4
Tree-same-pre-rewrite: false
peter klausler [Tue, 6 Feb 2018 19:14:53 +0000 (11:14 -0800)]
[flang] Markdown improvements.
Original-commit: flang-compiler/f18@
f40b5e40df72542153552442fd6800fe6449236f
peter klausler [Tue, 6 Feb 2018 00:53:38 +0000 (16:53 -0800)]
[flang] Convert parser combinator documentation file to Markdown.
Original-commit: flang-compiler/f18@
263865c97a4214ec69bed95cf362df6bfa4c1e09
peter klausler [Tue, 6 Feb 2018 00:08:46 +0000 (16:08 -0800)]
[flang] Alphabetize and remove settings that match LLVM defaults.
Original-commit: flang-compiler/f18@
82b1803f76a0053042a736f508e56c8e62817d4d
peter klausler [Mon, 5 Feb 2018 23:59:19 +0000 (15:59 -0800)]
[flang] Rename c++style.md -> C++style.md.
Original-commit: flang-compiler/f18@
4bde27deaed74b90b5907349052b6650b3cae360
peter klausler [Mon, 5 Feb 2018 23:58:22 +0000 (15:58 -0800)]
[flang] More Markdown fixes.
Original-commit: flang-compiler/f18@
8e77ed1f0ceeeeead3be7a62b79aaebd355978fc
peter klausler [Mon, 5 Feb 2018 23:53:17 +0000 (15:53 -0800)]
[flang] More Markdown fixes.
Original-commit: flang-compiler/f18@
7097566fa5451901bd2d945ea30e0f82e98ec4ae
peter klausler [Mon, 5 Feb 2018 23:50:42 +0000 (15:50 -0800)]
[flang] More Markdown fixes.
Original-commit: flang-compiler/f18@
7f7b1deb31d6adcb95906f5923cf081628423e79
peter klausler [Mon, 5 Feb 2018 23:43:46 +0000 (15:43 -0800)]
[flang] More Markdown fixes.
Original-commit: flang-compiler/f18@
89bdd4bf07a5bfecc56d762c4163e1f87509ce5e
peter klausler [Mon, 5 Feb 2018 23:39:52 +0000 (15:39 -0800)]
[flang] Fix Markdown usage.
Original-commit: flang-compiler/f18@
ee9e67964c16db55e1711a165720249ed1af7a66
peter klausler [Mon, 5 Feb 2018 23:28:17 +0000 (15:28 -0800)]
[flang] Convert c++style.txt to c++style.md.
Original-commit: flang-compiler/f18@
6b846b3c55ad2a044934406832ba55fae737dc8e
peter klausler [Mon, 5 Feb 2018 22:45:32 +0000 (14:45 -0800)]
[flang] Fix #else after triggered #elif.
Original-commit: flang-compiler/f18@
77db3281ecca5ee211fd4e0926bbfddc804ff63c
peter klausler [Mon, 5 Feb 2018 22:29:26 +0000 (14:29 -0800)]
[flang] Update .clang-format, then reformat all C++ files.
Original-commit: flang-compiler/f18@
0ec44de4b7f97574f69d943aaa5a2318ee8f2636