Opened 15 years ago

Closed 14 years ago

#1823 closed Bugs (worksforme)

Archive concept: Incomplete description?

Reported by: Sohail Somani <boost-trac@…> Owned by: Robert Ramey
Milestone: Boost 1.36.0 Component: serialization
Version: Boost 1.35.0 Severity: Problem
Keywords: documentation Cc:

Description

In the Archive concept documentation, it says that ar & foo has the effect of appending the value of foo to the archive. I think this should be a stronger requirement:

ar & foo

Does the same thing as << (or >>) and has the effect of registering the typeof(foo) with the archive.

Change History (7)

comment:1 by Robert Ramey, 15 years ago

I don't know for a fact that this is still the case. I think that I might have changed things so that derived polymorphic classes have to be registered explicity whether or not they are referred to by name.

Robert Ramey

in reply to:  1 comment:2 by Sohail Somani <boost-trac@…>, 15 years ago

Replying to ramey:

I don't know for a fact that this is still the case. I think that I might have changed things so that derived polymorphic classes have to be registered explicity whether or not they are referred to by name.

I'm not sure I understand. Are you saying that

Derived d;
ar & d;

does *not* register Derived? I can't imagine that is what you mean, but just want to be sure.

Definitely the following should not register derived:

Derived d;
Base & b(d);
ar & b;

comment:3 by Robert Ramey, 15 years ago

I'm not sure I understand. Are you saying that

Derived d; ar & d; does *not* register Derived? I can't imagine that is what you mean, but just want to be sure.

That's what I'm saying. If I recall, the "side effect" created a problem with abstract classes or something. Unfortunately I forget. If you look at one of the earlier resolved trak items you might find it. I had to disable the "side effect" because it was causing this problem.

Robert Ramey

Robert Ramey

in reply to:  3 ; comment:4 by Sohail Somani <boost-trac@…>, 15 years ago

Replying to ramey:

I'm not sure I understand. Are you saying that

Derived d; ar & d; does *not* register Derived? I can't imagine that is what you mean, but just want to be sure.

That's what I'm saying. If I recall, the "side effect" created a problem with abstract classes or something. Unfortunately I forget. If you look at one of the earlier resolved trak items you might find it. I had to disable the "side effect" because it was causing this problem.

Hmm. Can you take a look at the list here and see if you remember which one it was? I can't find it:

http://svn.boost.org/trac/boost/query?status=closed&groupdesc=1&group=component&component=serialization&order=id&desc=1

in reply to:  4 comment:5 by Sohail Somani <boost-trac@…>, 15 years ago

Replying to Sohail Somani <boost-trac@taggedtype.net>:

Replying to ramey:

I'm not sure I understand. Are you saying that

Derived d; ar & d; does *not* register Derived? I can't imagine that is what you mean, but just want to be sure.

That's what I'm saying. If I recall, the "side effect" created a problem with abstract classes or something. Unfortunately I forget. If you look at one of the earlier resolved trak items you might find it. I had to disable the "side effect" because it was causing this problem.

Hmm. Can you take a look at the list here and see if you remember which one it was? I can't find it:

http://svn.boost.org/trac/boost/query?status=closed&groupdesc=1&group=component&component=serialization&order=id&desc=1

Ah, is it #1267 ?

in reply to:  3 comment:6 by Sohail Somani <boost-trac@…>, 15 years ago

Replying to ramey:

I'm not sure I understand. Are you saying that

Derived d; ar & d; does *not* register Derived? I can't imagine that is what you mean, but just want to be sure.

That's what I'm saying. If I recall, the "side effect" created a problem with abstract classes or something. Unfortunately I forget. If you look at one of the earlier resolved trak items you might find it. I had to disable the "side effect" because it was causing this problem.

Just tried this in trunk. This seems to work so I am not sure if we are misunderstanding each other or not.

comment:7 by Robert Ramey, 14 years ago

Resolution: worksforme
Status: newclosed
Note: See TracTickets for help on using tickets.