Commit 045df4ec authored by david_v's avatar david_v
Browse files

2003-07-16 Valentin David <valentin@lrde.epita.fr>

	* README: Update.

	* src/syn/Specifiers.sdf: Add "ds" mark-up.

	* src/parser/parse-dxx.str: Use -fi option for sglr.

	* config/check-rules.mk,
	* test/disambiguate/template-06.detcc,
	* test/disambiguate/template-04.detcc: Fix.

	* TODO: New.
parent 0de2b6b2
2003-07-16 Valentin David <valentin@lrde.epita.fr>
* README: Update.
* src/syn/Specifiers.sdf: Add "ds" mark-up.
* src/parser/parse-dxx.str: Use -fi option for sglr.
* config/check-rules.mk,
* test/disambiguate/template-06.detcc,
* test/disambiguate/template-04.detcc: Fix.
* TODO: New.
2003-07-11 Valentin David <valentin@lrde.epita.fr>
* src/disamb/declarator/Declarator.str: Fix the bug for operator
......
......@@ -17,10 +17,11 @@ Requirements
StrategoXT 0.9.1 or above (http://www.stratego-language.org/)
sdf-option 0.1 or above (http://www.lrde.epita.fr/)
boxedsdf 0.1 or above (http://www.lrde.epita.fr/)
sdf-detgen 0.1 or above (http://www.lrde.epita.fr/)
Installation
------------
$ ./configure --with-xt=<PATH> --with-sdf-option=<PATH> --with-boxedsdf=<PATH>
$ ./configure --with-xt=<PATH> --with-lrde-sdftools=<PATH>
$ make
$ make install
* put deterministic grammar into src/syn/ directory
* correct the namespace marks-up into the det grammar
* debug filters (except disambiguate which will be rewritten)
* change marks-up to sgml style
* list different bugs in test/g++/ files parsing
* rewrite ambtracker in stratego and use it in parse-dxx
......@@ -12,7 +12,8 @@ CXX_PP_AF=$(top_builddir)/src/syn/Cxx.pp.af
# Disambiguation
.ptcc.disambcc:
$(top_builddir)/src/disamb/namespace/afcxx-namespace -S < $< | \
$(top_builddir)/src/disamb/namespace/afcxx-namespace -S \
-i $< | \
$(top_builddir)/src/disamb/declaration/afcxx-declaration -S | \
$(top_builddir)/src/disamb/resolve/afcxx-resolve -S | \
$(top_builddir)/src/disamb/declarator/afcxx-declarator -S | \
......@@ -20,7 +21,7 @@ CXX_PP_AF=$(top_builddir)/src/syn/Cxx.pp.af
$(top_builddir)/src/disamb/resolve/afcxx-resolve -S | \
$(top_builddir)/src/disamb/specifier/afcxx-specifier -S | \
$(top_builddir)/src/disamb/disambiguate/afcxx-disambiguate -S \
> $@
-o $@
# Implosion
.disambcc.astcc:
......@@ -35,7 +36,7 @@ CXX_PP_AF=$(top_builddir)/src/syn/Cxx.pp.af
.astcc.diff:
$(SGLR)/bin/sglr -2 -t -fi -A -p $(DXX_TBL) \
-i $(<:.astcc=.detcc) | \
$(ASFIX_TOOLS)/bin/implode-asfix > $(<:.astcc=.astcc2)
$(ASFIX_TOOLS)/bin/implode-asfix -o $(<:.astcc=.astcc2)
diff $< $(<:.astcc=.astcc2) > $@
# Pretty Printing
......
;; -*- Prcs -*-
(Created-By-Prcs-Version 1 3 2)
(Project-Description "Meta/SDF Grammar for C++")
(Project-Version meta-c++-grammar 0 125)
(Parent-Version meta-c++-grammar 0 124)
(Version-Log "2003-07-11 Valentin David <valentin@lrde.epita.fr>
(Project-Version meta-c++-grammar 0 126)
(Parent-Version meta-c++-grammar 0 125)
(Version-Log "2003-07-16 Valentin David <valentin@lrde.epita.fr>
* src/disamb/declarator/Declarator.str: Fix the bug for operator
definitions.
* README: Update.
* src/syn/Specifiers.sdf: Add \"ds\" mark-up.
* src/parser/parse-dxx.str: Use -fi option for sglr.
* config/check-rules.mk,
* test/disambiguate/template-06.detcc,
* test/disambiguate/template-04.detcc: Fix.
* TODO: New.
")
(New-Version-Log "")
(Checkin-Time "Fri, 11 Jul 2003 17:21:03 +0200")
(Checkin-Time "Wed, 16 Jul 2003 10:21:36 +0200")
(Checkin-Login david_v)
(Populate-Ignore
(
......@@ -80,9 +89,9 @@
)
(Project-Keywords)
(Files
(ChangeLog (meta-c++-grammar/0_ChangeLog 1.121 600))
(ChangeLog (meta-c++-grammar/0_ChangeLog 1.122 600))
(Makefile.am (meta-c++-grammar/f/34_Makefile.a 1.12 644))
(README (meta-c++-grammar/g/37_README 1.4 600))
(README (meta-c++-grammar/g/37_README 1.5 600))
(config/Makefile.am (meta-c++-grammar/f/40_Makefile.a 1.5 644))
(configure.ac (meta-c++-grammar/f/44_configure. 1.27 600))
(src/syn/Layout.sdf (meta-c++-grammar/4_Layout.sdf 1.3 644))
......@@ -152,7 +161,7 @@
(src/syn/SelectionStatements.sdf (meta-c++-grammar/b/12_SelectionS 1.6 644))
(src/syn/ShiftExpressions.sdf (meta-c++-grammar/b/13_ShiftExpre 1.6 644))
(src/syn/SimpleTypeSpecifiers.sdf (meta-c++-grammar/b/14_SimpleType 1.8 644))
(src/syn/Specifiers.sdf (meta-c++-grammar/b/15_Specifiers 1.8 644))
(src/syn/Specifiers.sdf (meta-c++-grammar/b/15_Specifiers 1.9 644))
(src/syn/Statements.sdf (meta-c++-grammar/b/16_Statements 1.2 644))
(src/syn/StorageClassSpecifiers.sdf (meta-c++-grammar/b/17_StorageCla 1.4 644))
(src/syn/StringLiterals.sdf (meta-c++-grammar/b/18_StringLite 1.3 644))
......@@ -610,18 +619,18 @@
(src/disamb/namespace/Makefile.am (meta-c++-grammar/l/32_Makefile.a 1.1 640))
(src/disamb/namespace/afcxx-namespace.str (meta-c++-grammar/l/33_afcxx-name 1.1 640))
(src/parser/parse-cxx.str (meta-c++-grammar/l/34_parse-cxx. 1.2 644))
(src/parser/parse-dxx.str (meta-c++-grammar/l/35_parse-dxx. 1.1 644))
(src/parser/parse-dxx.str (meta-c++-grammar/l/35_parse-dxx. 1.2 644))
(src/parser/Makefile.am (meta-c++-grammar/l/36_Makefile.a 1.1 644))
(config/check-rules.mk (meta-c++-grammar/l/37_check-rule 1.2 640))
(config/check-rules.mk (meta-c++-grammar/l/37_check-rule 1.3 640))
(config/defs.in (meta-c++-grammar/l/38_defs.in 1.1 644))
(test/disambiguate/variable-01.detcc (meta-c++-grammar/l/39_variable-0 1.1 600))
(test/disambiguate/typedef-02.detcc (meta-c++-grammar/l/40_typedef-02 1.1 600))
(test/disambiguate/typedef-01.detcc (meta-c++-grammar/l/41_typedef-01 1.1 600))
(test/disambiguate/template-10.detcc (meta-c++-grammar/l/42_template-1 1.1 644))
(test/disambiguate/template-09.detcc (meta-c++-grammar/l/43_template-0 1.2 644))
(test/disambiguate/template-06.detcc (meta-c++-grammar/l/44_template-0 1.1 644))
(test/disambiguate/template-06.detcc (meta-c++-grammar/l/44_template-0 1.2 644))
(test/disambiguate/template-05.detcc (meta-c++-grammar/l/45_template-0 1.1 644))
(test/disambiguate/template-04.detcc (meta-c++-grammar/l/46_template-0 1.1 644))
(test/disambiguate/template-04.detcc (meta-c++-grammar/l/46_template-0 1.2 644))
(test/disambiguate/function-06.detcc (meta-c++-grammar/l/47_function-0 1.2 600))
(test/disambiguate/function-05.detcc (meta-c++-grammar/l/48_function-0 1.2 600))
(test/disambiguate/function-04.detcc (meta-c++-grammar/l/49_function-0 1.1 600))
......@@ -637,6 +646,11 @@
(src/disamb/bitfield/Makefile.am (meta-c++-grammar/m/4_Makefile.a 1.1 640))
(src/disamb/bitfield/afcxx-bitfield.str (meta-c++-grammar/m/5_afcxx-bitf 1.1 644))
;; Files added by populate at Wed, 16 Jul 2003 10:20:52 +0200,
;; to version 0.125(w), by david_v:
(TODO (meta-c++-grammar/m/6_TODO 1.1 644))
)
(Merge-Parents)
(New-Merge-Parents)
......@@ -4,6 +4,6 @@ strategies
io-parse-dxx =
xtc-io-wrap(
xtc-sglr(!"Dxx.tbl");
xtc-transform(!"sglr", !["-2A", "-fi", "-p", <!"Dxx.tbl"; xtc-find> ]);
xtc-implode-asfix
)
......@@ -16,11 +16,11 @@ exports
context-free syntax
%% 7.1 [dcl.spec]
StorageClassSpecifier -> DeclSpecifier
TypeSpecifier -> DeclSpecifier
FunctionSpecifier -> DeclSpecifier
"friend" -> DeclSpecifier
"typedef" -> DeclSpecifier
StorageClassSpecifier -> DeclSpecifier {dettag("ds")}
TypeSpecifier -> DeclSpecifier {dettag("ds")}
FunctionSpecifier -> DeclSpecifier {dettag("ds")}
"friend" -> DeclSpecifier {dettag("ds")}
"typedef" -> DeclSpecifier {dettag("ds")}
%% 7.1 [dcl.spec]
DeclSpecifier+ -> DeclSpecifierSeq
......
......@@ -4,4 +4,4 @@ struct Traits
typedef int /*[uid]*/a_t/*[!uid]*/;
};
typedef Traits< int >::/*[tn]*/a_t/*[!tn]*/ /*[uid]*/b_t/*[!uid]*/;
typedef /*[ds]*/Traits< int >::/*[tn]*/a_t/*[!tn]*//*[!ds]*/ /*[uid]*/b_t/*[!uid]*/;
......@@ -9,5 +9,5 @@ int
/*[uid]*/main/*[!uid]*/ (int /*[uid]*/argc/*[!uid]*/,
char** /*[uid]*/argv/*[!uid]*/)
{
return foo< 42 > ();
return /*[uid]*/foo< 42 >/*[!uid]*/ ();
}
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment