| Summary: | When creating code for attribute access, the C++ code generator produces unexpected code | ||
|---|---|---|---|
| Product: | [Applications] umbrello | Reporter: | Ralf Habacker <ralf.habacker> |
| Component: | exporter | Assignee: | Umbrello Development Group <umbrello-devel> |
| Status: | RESOLVED FIXED | ||
| Severity: | wishlist | ||
| Priority: | NOR | ||
| Version First Reported In: | 2.29.3 (KDE Applications 19.08.3) | ||
| Target Milestone: | 2.30 (KDE releases 19.12) | ||
| Platform: | Other | ||
| OS: | All | ||
| Latest Commit: | https://commits.kde.org/umbrello/1c715d386e01655cc3d07571d79b9b2f97f67ef2 | Version Fixed/Implemented In: | 2.29.80 (KDE Applications 19.11.80) |
| Sentry Crash Report: | |||
| Bug Depends on: | |||
| Bug Blocks: | 57583 | ||
Git commit a611d2f5b91ede55e612ac4254c044d35796b53c by Ralf Habacker. Committed on 10/11/2019 at 00:25. Pushed by habacker into branch 'release/19.12'. Add additional c++ code generation policies to fix unexpected code generation - Getters with/without 'get' prefix - Remove prefix '[a-zA-Z]_' from accessor methods - Accessor methods start with/without capital letters FIXED-IN:2.29.80 (KDE Applications 19.11.80) M +76 -0 umbrello/codegenerators/cpp/cppcodegenerationform.cpp M +9 -0 umbrello/codegenerators/cpp/cppcodegenerationform.h M +42 -0 umbrello/codegenerators/cpp/cppcodegenerationpolicy.cpp M +9 -1 umbrello/codegenerators/cpp/cppcodegenerationpolicy.h M +6 -0 umbrello/codegenerators/cpp/cppcodegenerationpolicypage.cpp M +9 -7 umbrello/codegenerators/cpp/cppwriter.cpp M +3 -0 umbrello/optionstate.cpp M +7 -1 umbrello/optionstate.h M +15 -0 umbrello/umbrello.kcfg https://commits.kde.org/umbrello/a611d2f5b91ede55e612ac4254c044d35796b53c Git commit 1c715d386e01655cc3d07571d79b9b2f97f67ef2 by Ralf Habacker. Committed on 10/11/2019 at 00:27. Pushed by habacker into branch 'master'. Add additional c++ code generation policies to fix unexpected code generation - Getters with/without 'get' prefix - Remove prefix '[a-zA-Z]_' from accessor methods - Accessor methods start with/without capital letters FIXED-IN:2.29.80 (KDE Applications 19.11.80) M +76 -0 umbrello/codegenerators/cpp/cppcodegenerationform.cpp M +9 -0 umbrello/codegenerators/cpp/cppcodegenerationform.h M +42 -0 umbrello/codegenerators/cpp/cppcodegenerationpolicy.cpp M +9 -1 umbrello/codegenerators/cpp/cppcodegenerationpolicy.h M +6 -0 umbrello/codegenerators/cpp/cppcodegenerationpolicypage.cpp M +9 -7 umbrello/codegenerators/cpp/cppwriter.cpp M +3 -0 umbrello/optionstate.cpp M +7 -1 umbrello/optionstate.h M +15 -0 umbrello/umbrello.kcfg https://commits.kde.org/umbrello/1c715d386e01655cc3d07571d79b9b2f97f67ef2 Git commit f0b4fec440f1d91ab24a5be181dcfed6e409eef7 by Ralf Habacker. Committed on 10/11/2019 at 16:25. Pushed by habacker into branch 'release/19.12'. Minor text fix in settings dialog M +1 -1 umbrello/codegenerators/cpp/cppcodegenerationform.cpp https://commits.kde.org/umbrello/f0b4fec440f1d91ab24a5be181dcfed6e409eef7 |
Creating code for attribute accessors the c++ code generator generates unexpected code. STEPS TO REPRODUCE 1. start umbrello 2. create class class Test { private: int m_attribute; }; 3. generate code 4. inspect generated code OBSERVED RESULT class Test { void setM_attribute(...); int getM_attribute(); }; EXPECTED RESULT class Test { void setAttribute(...); int attribute(); }; ADDITIONAL INFORMATION To support the expected code style the following code policies need to be implemented: - Getters with/without 'get' prefix - Remove prefix '[a-zA-Z]_' from attributed on generating accessor methods - Accessor methods start with/without capital letters