[Marble-bugs] [marble] [Bug 341203] New: Char* assignments to QStrings in headers, breaks compilation with QT_NO_CAST_ASCII

Teemu Rytilahti tpr at iki.fi
Sun Nov 23 21:29:44 UTC 2014


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

            Bug ID: 341203
           Summary: Char* assignments to QStrings in headers, breaks
                    compilation with QT_NO_CAST_ASCII
           Product: marble
           Version: unspecified
          Platform: Other
                OS: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: NOR
         Component: general
          Assignee: marble-bugs at kde.org
          Reporter: tpr at iki.fi

There are multiple instances of setting default values for parameters in the
public headers. This in turn breaks builds if QT_NO_CAST_ASCII is being used,
like it seems to be default for KF5 builds when no KF5Kdelibs4Support is
enabled.

Possible solution would be to avoid defining default values in those headers or
wrapping them with QStringLiteral or similar.

[tpr at tuli lib]$ find . -name *.h|xargs grep "=\s*\""
./marble/AbstractDataPlugin.h:                 const QString& renderPos =
"NONE", GeoSceneLayer * layer = 0 );
./marble/MapWizard.h:    static QString createLegendHtml( const QString& image
= "./legend/legend.png" );
./marble/MarbleMap.h:     *    maptheme = "earth/bluemarble/bluemarble.dgml"
./marble/MarbleMap.h:     *    maptheme = "earth/bluemarble/bluemarble.dgml" 
./marble/MarbleModel.h:     *    maptheme = "earth/bluemarble/bluemarble.dgml"
./marble/MarbleModel.h:     *    maptheme = "earth/bluemarble/bluemarble.dgml"
./marble/MarbleModel.h:    void addGeoDataString( const QString& data, const
QString& key = "data" );
./marble/MarbleWidget.h:     *    mapThemeId =
"earth/bluemarble/bluemarble.dgml"
./marble/MarbleWidget.h:     *    maptheme = "earth/bluemarble/bluemarble.dgml"
./marble/layers/TextureLayer.h:                 const QString &renderPos =
"NONE", GeoSceneLayer *layer = 0 );
./marble/layers/GeometryLayer.h:                         const QString&
renderPos = "NONE", GeoSceneLayer * layer = 0 );
./marble/layers/GroundLayer.h:    const QString& renderPos = "NONE",
GeoSceneLayer * layer = 0 );
./marble/layers/GroundLayer.h:    QColor m_color;  // Gets the color specified
via DGML's <map bgcolor="">
./marble/layers/FogLayer.h:       const QString& renderPos = "NONE",
GeoSceneLayer * layer = 0 );
./marble/layers/MarbleSplashLayer.h:                         const QString
&renderPos = "SURFACE", GeoSceneLayer *layer = 0 );
./marble/layers/VectorTileLayer.h:                 const QString &renderPos =
"NONE", GeoSceneLayer *layer = 0 );
./marble/layers/PlacemarkLayer.h:                 const QString &renderPos =
"NONE", GeoSceneLayer *layer = 0 );
./marble/routing/RoutingLayer.h:                 const QString &renderPos =
"NONE", GeoSceneLayer *layer = 0 );
./marble/AbstractFloatItem.h:                 const QString& renderPos =
"FLOAT_ITEM", GeoSceneLayer * layer = 0 );

Reproducible: Always

Steps to Reproduce:
1. Include marble/MarbleModel.h to your external project
2. Compile external project with QT_NO_CAST_ASCII enabled

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the Marble-bugs mailing list