By default, Bugzilla does not search the list of RESOLVED bugs.
You can force it to do so by putting the upper-case word ALL in front of your search query, e.g.: ALL tdelibs
We recommend searching for bugs this way, as you may discover that your bug has already been resolved and fixed in a later release.
Bug 1604 - Build issue: dbus-1-tqt: dbusxml2qt3 produces malformed c++ templates
Summary: Build issue: dbus-1-tqt: dbusxml2qt3 produces malformed c++ templates
Status: RESOLVED FIXED
Alias: None
Product: TDE
Classification: Unclassified
Component: other (any) (show other bugs)
Version: R14.0.0 [Trinity]
Hardware: All Linux
: P5 blocker
Assignee: Alexander Golubev (Fat-Zer)
URL:
Depends on:
Blocks:
 
Reported: 2013-08-01 03:21 CDT by Alexander Golubev (Fat-Zer)
Modified: 2013-09-30 14:14 CDT (History)
5 users (show)

See Also:
Compiler Version:
TDE Version String:
Application Version:
Application Name:


Attachments
dbus-1-tqt-fixed-malformed-templates.patch (2.87 KB, patch)
2013-08-01 03:21 CDT, Alexander Golubev (Fat-Zer)
Details | Diff
dbus-1-tqt-fixed-malformed-templates-1.patch (3.04 KB, patch)
2013-08-01 04:49 CDT, Alexander Golubev (Fat-Zer)
Details | Diff
udisks-2.1.0 dbus introspection file (95.42 KB, text/xml)
2013-08-16 20:52 CDT, Alexander Golubev (Fat-Zer)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Golubev (Fat-Zer) 2013-08-01 03:21:40 CDT
Created attachment 1432 [details]
dbus-1-tqt-fixed-malformed-templates.patch

the sources produced by the dbusxml2qt3 from UDisks2-API description file are FTBFS with next errors:
========================================
/tmp/tdelibs-build/tdehw/backends/udisks2/blockproxy.h:66:75: error: 'error' was not declared in this scope
/tmp/tdelibs-build/tdehw/backends/udisks2/blockproxy.h:66:80: error: a function call cannot appear in a constant-expression
/tmp/tdelibs-build/tdehw/backends/udisks2/blockproxy.h:66:45: error: '>>' should be '> >' within a nested template argument list
/tmp/tdelibs-build/tdehw/backends/udisks2/blockproxy.cpp:250:43: error: 'DBus::Block::getSymlinks(TQT_DBusError&) const' cannot appear in a constant-expression
/tmp/tdelibs-build/tdehw/backends/udisks2/blockproxy.cpp:250:70: error: 'error' was not declared in this scope
/tmp/tdelibs-build/tdehw/backends/udisks2/blockproxy.cpp:250:75: error: a function call cannot appear in a constant-expression
/tmp/tdelibs-build/tdehw/backends/udisks2/blockproxy.cpp:250:33: error: '>>' should be '> >' within a nested template argument list
/tmp/tdelibs-build/tdehw/backends/udisks2/blockproxy.cpp: In member function 'virtual TQValueList<TQValueList<unsigned char> > DBus::Block::getSymlinks(TQT_DBusError&) const':
/tmp/tdelibs-build/tdehw/backends/udisks2/blockproxy.cpp:254:65: error: '>>' should be '> >' within a nested template argument list
/tmp/tdelibs-build/tdehw/backends/udisks2/blockproxy.cpp:260:40: error: 'result' was not declared in this scope
/tmp/tdelibs-build/tdehw/backends/udisks2/blockproxy.cpp:260:76: error: 'class TQT_DBusDataList' has no member named 'toListList'
/tmp/tdelibs-build/tdehw/backends/udisks2/blockproxy.cpp:260:93: error: an assignment cannot appear in a constant-expression
/tmp/tdelibs-build/tdehw/backends/udisks2/blockproxy.cpp:260:37: error: '>>' should be '> >' within a nested template argument list
/tmp/tdelibs-build/tdehw/backends/udisks2/blockproxy.cpp:260:76: error: 'class TQT_DBusDataList' has no member named 'toListList'
========================================
As gcc says the solution is to add spaces inside template brackets

The patch is untested yet but it supposed to work.
Comment 1 Alexander Golubev (Fat-Zer) 2013-08-01 04:04:50 CDT
ok... the patch doesn't fixes all problems... The source still FTBFS with next error:
========================
/tmp/tdelibs-build/tdehw/backends/udisks2/blockproxy.cpp: In member function 'virtual TQValueList<TQValueList<unsigned char> > DBus::Block::getSymlinks(TQT_DBusError&) const':
/tmp/tdelibs-build/tdehw/backends/udisks2/blockproxy.cpp:260:80: error: 'class TQT_DBusDataList' has no member named 'toListList'
========================
Comment 2 Alexander Golubev (Fat-Zer) 2013-08-01 04:49:28 CDT
Created attachment 1434 [details]
dbus-1-tqt-fixed-malformed-templates-1.patch

Here is the new patch. The arrays of arrays should be handled in the same way arrays of structures are.
I've leaved the spaces inside templates, but strictly speaking they are not really necessary.

Now Block::getSymlinks returns TQT_DBusDataList. I'm not quite sure if it works or how it supposed to be accessed (I haven't found any index methods in TQT_DBusDataList).
Comment 3 Darrell 2013-08-16 14:50:56 CDT
I don't see these build errors. Which tdelibs configure option triggers these build failures?

If I test the patch by rebuilding dbus-1-tqt and tdelibs, do you have some method to validate the results?
Comment 4 Alexander Golubev (Fat-Zer) 2013-08-16 20:52:09 CDT
Created attachment 1475 [details]
udisks-2.1.0 dbus introspection file

(In reply to comment #3)
> I don't see these build errors. Which tdelibs configure option triggers these
> build failures?
> 
> If I test the patch by rebuilding dbus-1-tqt and tdelibs, do you have some
> method to validate the results?

No options yet. It blocks further development... =)
I don't know why you renamed it to Build Issue:. It's just a bug.

To reproduce you could get this udisks-2.1.0 dbus introspection file and run dbusxml2qt3 --proxy on it. You'll see that produced cpp code would be broken.
Comment 5 Darrell 2013-08-16 21:45:17 CDT
>I don't know why you renamed it to Build Issue:. It's just a bug.
Because you wrote FTBFS. :-)

>To reproduce you could get this udisks-2.1.0 dbus introspection file and run
>dbusxml2qt3 --proxy on it. You'll see that produced cpp code would be broken.
That's okay. :-) I tested building tdelibs with and without the dbus-1-tqt being patched and tdelibs built for me both times without failure. I don't know what is different between our build environments that causes this. I'm not qualified to evaluate this patch. If Tim, Slavek or Francois review or test the patch I'll push to git. :-)
Comment 6 Timothy Pearson 2013-08-26 15:53:26 CDT
Patch looks good, committed to GIT in hash 03fde36.
Comment 7 Timothy Pearson 2013-08-26 15:53:47 CDT
Comment on attachment 1434 [details]
dbus-1-tqt-fixed-malformed-templates-1.patch

GIT hash 03fde36
Comment 8 Alexander Golubev (Fat-Zer) 2013-08-26 16:44:47 CDT
why NEEDINFO status?
Comment 9 Timothy Pearson 2013-08-26 16:49:02 CDT
Just looking for your confirmation (as the original reporter) that this report should be closed. :-)