https://bugs.kde.org/show_bug.cgi?id=363814

            Bug ID: 363814
           Summary: typedef conflict between kglobal.h and ksharedconfig.h
           Product: frameworks-kconfig
           Version: 5.22.0
          Platform: Archlinux Packages
                OS: Linux
            Status: UNCONFIRMED
          Severity: major
          Priority: NOR
         Component: general
          Assignee: matt...@mjdsystems.ca
          Reporter: spencerbrown...@gmail.com
                CC: kdelibs-b...@kde.org

WIth both kglobal.h and ksharedconfig.h included in a file, the build process
fails, complaining of a typedef conflict between 
typedef KSharedConfig::Ptr KSharedConfigPtr; (in ksharedconfig.h)
and
typedef KSharedPtr<KSharedConfig> KSharedConfigPtr; (in kglobal.h)

Reproducible: Always

Steps to Reproduce:
1. #include <kglobal.h> and <ksharedconfig.h> in project
2. build (cmake)

Actual Results:  
Build fails

Expected Results:  
Project should have been built sucessfully

I'm using KDevelop 4.90.92 and CMake, working on the KJots project.
Build error thrown is below.

In file included from /usr/include/kcomponentdata.h:23:0,
                 from /home/spencer/projects/kjots.git/src/kjotsedit.cpp:32:
/usr/include/KF5/KConfigCore/ksharedconfig.h:90:28: error: conflicting
declaration ‘typedef KSharedConfig::Ptr KSharedConfigPtr’
 typedef KSharedConfig::Ptr KSharedConfigPtr;
                            ^~~~~~~~~~~~~~~~
In file included from /usr/include/kstandarddirs.h:27:0,
                 from /home/spencer/projects/kjots.git/src/kjotsedit.cpp:31:
/usr/include/kglobal.h:42:35: note: previous declaration as ‘typedef class
KSharedPtr<KSharedConfig> KSharedConfigPtr’
 typedef KSharedPtr<KSharedConfig> KSharedConfigPtr;
                                   ^~~~~~~~~~~~~~~~
src/CMakeFiles/kjots_common.dir/build.make:122: recipe for target
'src/CMakeFiles/kjots_common.dir/kjotsedit.cpp.o' failed
make[2]: *** [src/CMakeFiles/kjots_common.dir/kjotsedit.cpp.o] Error 1
CMakeFiles/Makefile2:214: recipe for target
'src/CMakeFiles/kjots_common.dir/all' failed
make[1]: *** [src/CMakeFiles/kjots_common.dir/all] Error 2
Makefile:138: recipe for target 'all' failed
make: *** [all] Error 2
*** Failure: Exit code 2 ***

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to