Skip to content

Commit 5d07b43

Browse files
authored
Merge pull request #17 from flodavid/compilateur
Indentation of output C++ code
2 parents a09aad4 + f24dc10 commit 5d07b43

59 files changed

Lines changed: 1305 additions & 693 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.travis.yml

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
21
language: cpp
32
sudo: required
43
dist: trusty
@@ -22,13 +21,13 @@ addons:
2221
# gcc/g++ repository
2322
- ubuntu-toolchain-r-test
2423
packages:
25-
- g++-5
24+
# - g++-5
2625
- g++-7
2726

2827
install:
2928
# g++ install
30-
- if [ "$CXX" = "g++" ]; then export CXX="g++-5" CC="gcc-4.9"; fi
31-
- alias g++="g++-5"
29+
- if [ "$CXX" = "g++" ]; then export CXX="g++-7" CC="gcc-4.9"; fi
30+
- alias g++="g++-7"
3231
- g++ --version
3332
- echo -e "================="
3433
- $CXX --version
@@ -42,7 +41,9 @@ script:
4241

4342
after_success:
4443
# Launch other tests
45-
- bash full_tests.sh && echo -e "\nResults\n =======\n" && ./*.run ; rm -f *.run ; echo -e "\n =======\n"
44+
- bash full_tests.sh && echo -e "\nResults\n =======\n"
45+
- ./1_main_simple.run --mynumber 5 --mystring="hello" && rm -rf ./1_main_simple.run
46+
- ./*.run ; rm -f *.run ; echo -e "\n =======\n"
4647
- cd ../examples
4748
- bash valid_tests.sh && echo -e "\nResults\n =======\n" && ./*.run ; rm -f *.run ; echo -e "\n =======\n"
4849
- bash unvalid_tests.sh && echo -e "\nResults\n =======\n" && ./*.run ; rm -f *.run ; echo -e "\n =======\n"

makefile

Lines changed: 22 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -23,16 +23,18 @@ YACC_FLAGS = -t --verbose
2323
# --- FAIRE UN FICHIER CPP POUR CHAQUE FICHIER H S'IL Y A UNE CLASSE DEDANS ---
2424

2525
# Core
26-
MOD_CPP = Node.cpp Program.cpp TranslatedNode.cpp EmptyNode.cpp
26+
MOD_CPP = Node.cpp Program.cpp TranslatedNode.cpp EmptyNode.cpp ConvertNode.cpp
2727
# Conditional expression
2828
MOD_CPP += Expression.cpp BooleanExpression.cpp BooleanValue.cpp ConditionalExpression.cpp
2929
# Divers
30-
MOD_CPP += ArrayAccess.cpp Operator.cpp
30+
MOD_CPP += ArrayAccess.cpp Operator.cpp FunctionCall.cpp FunctionCallExpression.cpp
3131

3232
# Instructions
33-
INSTR_CPP = If.cpp Else.cpp
34-
INSTR_CPP += For.cpp Repeat.cpp While.cpp
35-
INSTR_CPP += Return.cpp FunctionCall.cpp Affectation.cpp
33+
INSTR_CPP = Instruction.cpp If.cpp Else.cpp
34+
INSTR_CPP += For.cpp Repeat.cpp While.cpp Return.cpp
35+
INSTR_CPP += FunctionCallInstruction.cpp Affectation.cpp Print.cpp CppCode.cpp Input.cpp
36+
37+
LIBS_CPP = StringFunction.cpp
3638

3739
# Declarations
3840
DEC_CPP = CommonDeclaration.cpp CommonVar.cpp
@@ -48,16 +50,17 @@ HT_CPP = HashElement.cpp HashTable.cpp ScopeHashTable.cpp ClassHashTable.cpp
4850
# Hash elements corresponding to declarations
4951
HT_CPP += ClassHashed.cpp FunctionHashed.cpp VariableHashed.cpp
5052

51-
ALL_CPP = ${MOD_CPP} ${DEC_CPP} ${INSTR_CPP} ${ADDONS_CPP} ${HT_CPP}
53+
ALL_CPP = ${MOD_CPP} ${DEC_CPP} ${INSTR_CPP} ${LIBS_CPP} ${ADDONS_CPP} ${HT_CPP}
5254

5355
# Object files
5456
MOD_OBJ = $(MOD_CPP:%.cpp=obj/%.o)
5557
DEC_OBJ = $(DEC_CPP:%.cpp=obj/%.o)
5658
INSTR_OBJ = $(INSTR_CPP:%.cpp=obj/%.o)
59+
LIBS_OBJ = $(LIBS_CPP:%.cpp=obj/%.o)
5760
ADDONS_OBJ = $(ADDONS_CPP:%.cpp=obj/%.o)
5861
HT_OBJ = $(HT_CPP:%.cpp=obj/%.o)
5962

60-
ALL_OBJ = ${MOD_OBJ} ${DEC_OBJ} ${INSTR_OBJ} ${ADDONS_OBJ} ${HT_OBJ}
63+
ALL_OBJ = ${MOD_OBJ} ${DEC_OBJ} ${INSTR_OBJ} ${LIBS_OBJ} ${ADDONS_OBJ} ${HT_OBJ}
6164

6265
# Dependency files
6366
ALL_DPDCY = $(ALL_OBJ:%.o=%.d)
@@ -70,7 +73,7 @@ EXEC = EZ_language_compiler
7073
#compiler
7174
all: $(EXEC)
7275

73-
EZ_language_compiler: obj/lex.yy.c obj/EZ_language_compiler.tab.cpp obj/EZ_language_compiler.tab.hpp $(ALL_OBJ)
76+
EZ_language_compiler: obj/lex.yy.c obj/EZ_language_compiler.tab.cpp obj/EZ_language_compiler.tab.hpp $(ALL_OBJ)
7477
@echo -e "\033[1;33mCréation du compilateur en compilant les sources\033[0m"
7578
$(CC) -o bin/$@ obj/EZ_language_compiler.tab.cpp obj/lex.yy.c $(ALL_OBJ) -lfl $(CC_FLAGS)
7679

@@ -96,6 +99,11 @@ obj/%.d: src/instructions/%.cpp
9699
$(CC) $< -MT $@ -MT obj/$*.o -o $@ $(CC_MOD_FLAGS)
97100
@echo ""
98101

102+
obj/%.d: src/libraries/%.cpp
103+
@echo -e "\033[1;33mDépendance pour le fichier $< créée : \033[0m"
104+
$(CC) $< -MT $@ -MT obj/$*.o -o $@ $(CC_MOD_FLAGS)
105+
@echo ""
106+
99107
obj/%.d: src/modules/%.cpp
100108
@echo -e "\033[1;33mDépendance pour le fichier $< créée : \033[0m"
101109
$(CC) $< -MT $@ -MT obj/$*.o -o $@ $(CC_MOD_FLAGS)
@@ -125,6 +133,12 @@ obj/%.o: src/instructions/%.cpp
125133
$(CC) -c $< -o $@ $(CC_FLAGS)
126134
@echo ""
127135

136+
137+
obj/%.o: src/libraries/%.cpp
138+
@echo -e "\033[1;33mFichier objet pour le fichier $< créé : \033[0m"
139+
$(CC) -c $< -o $@ $(CC_FLAGS)
140+
@echo ""
141+
128142
obj/%.o: src/modules/%.cpp
129143
@echo -e "\033[1;33mFichier objet pour le fichier $< créé : \033[0m"
130144
$(CC) -c $< -o $@ $(CC_FLAGS)

0 commit comments

Comments
 (0)